这次一直没过的是,C++的char转int,
要用这一句
int rightNum = (int)num[i] - 48;
一定要减去48才行。。调了一会儿才发现
下面是源码
/* ID: bbsunch2 PROG: namenum LANG: C++ */ #include <iostream> #include <fstream> #include <string> #include <vector> #include <stdlib.h> using namespace std; char number_letter[10][3] = { {},// 0 {},// 1 {'A','B','C'}, // 2 {'D','E','F'}, // 3 {'G','H','I'}, // 4 {'J','K','L'}, // 5 {'M','N','O'}, // 6 {'P','R','S'}, // 7 {'T','U','V'}, // 8 {'W','X','Y'} // 9 }; int main() { ofstream fout ("namenum.out"); ifstream fin ("namenum.in"); ifstream fdict ("dict.txt"); string word; vector <string> dicts; while(fdict.good() && !fdict.eof()) { getline(fdict,word,'\n'); dicts.push_back(word); } string num; fin >> num; int numSize = num.size(); for(vector<string>::iterator iter=dicts.begin();iter!=dicts.end();) { word = *iter; int wordSize = word.size(); if(wordSize != numSize) { dicts.erase(iter); continue; } ++iter; } for(int i = 0; i < numSize; i++) { int rightNum = (int)num[i] - 48; for(vector<string>::iterator iter=dicts.begin();iter!=dicts.end();) { word = *iter; char rightLetter = word[i]; bool key = false; for(int j = 0; j < 3; j++) { char letter = number_letter[rightNum][j]; if(letter == rightLetter) { key = true; break; } } if(key) { ++iter; }else { dicts.erase(iter); continue; } } } if(dicts.size() == 0) { fout << "NONE" << endl; }else { for(vector<string>::iterator iter=dicts.begin();iter!=dicts.end();++iter) { word = *iter; fout << word << endl; } } return 0; }
相关推荐
USACO答案,采用C++写的,题目是:name that number.
USACO题目Name That Number (namenum)及代码解析
usaco 合集,包括英文原题和中文译题,测试数据以及答案,很全啊!usaco 合集usaco 合集usaco 合集usaco 合集
usaco历年测试数据
某些USACO题目的答案,很详细,代码清晰结构良好,算法高效易于调试
usaco的总结和心得 包括了对题目的分了和总结 以及对题目的解法概括
usaco 2010-2011 nov news,喜欢usaco的朋友可以看看
USACO题集及答案
USACO教程,包含USACO全部英文原题,题解(NOCOW整理版),翻译,教程,代码,测试数据。
USACO做题代码
5 [1.2] 命名那个数字 Name That Number 6 [1.2] 挤牛奶Milking Cows 7 [1.2] 方块转换 Transformations 8 [1.2] 回文平方数 Palindromic Squares 9 [1.2] 双重回文数 Dual Palindromes 10 [1.3] 混合牛奶 Mixing ...
USACO全部译题 USACO Training Program Gateway
usaco traning的全部数据 才要3分
USACO历年比赛测试数据:2003年 方便大家测试
USACO系统第一章节所有源码,自己编写,注释详细
内含USACO全部测试数据,绝对全
USACO所有题目的题解 NOCOW整理版
Usaco总结&题解 一位大牛写的Usaco的总结,并有所有题的题解,推荐!!
数据结构机考所参考的USACO网站所有题目的解题思路,资源比较稀有!
此文件包含了USACO上全部测试数据,方便您离线使用