10815 - Andy's First Dictionary
2016-05-06 12:16
309 查看
Andy’s First Dictionary
PS:因为该题排版较麻烦,这里给出OJ网址:UVa10815 - Andy’s First Dictionary输入一个文本,找出所有不同的单词(连续的字母序列),按字典序从小到大输出。单词不区分大小写。
#include <iostream> #include <string> #include <set> #include <sstream> using namespace std; // string集合 set<string> dict; int main() { string s, buf; while(cin >> s) { for(int i = 0; i < s.length(); i++) { // 字母则小写,非字母则空格 if(isalpha(s[i])) { s[i] = tolower(s[i]); } else { s[i] = ' '; } } // stringstream以空格和回车换行作为分隔符 stringstream ss(s); while(ss >> buf) { dict.insert(buf); } } set<string>::iterator it; for(it = dict.begin(); it != dict.end(); ++it) { cout << *it << endl; } return 0; }
相关文章推荐
- 简单的四则运算
- 数的奇偶性
- ACMer博客瀑布流分析
- ACM程序设计大赛题目分类
- 计算字符串最后一个单词长度
- ACM网址
- 1272 小希的迷宫
- 1272 小希的迷宫
- hdu 1250 大数相加并用数组储存
- 矩阵的乘法操作
- 1.10055 - Hashmat the brave warrior
- 2.10071 - Back to High School Physics
- 3.458 - The Decoder
- 4.694 - The Collatz Sequence
- 6.494 - Kindergarten Counting Game
- 7.490 - Rotating Sentences
- 8.414 - Machined Surfaces
- 9.488 - Triangle Wave
- A.457 - Linear Cellular Automata
- B.489 - Hangman Judge