10815 - Andy's First Dictionary

来源:互联网 发布:剑三男捏脸数据 编辑:程序博客网 时间:2024/06/06 02:31

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;}
0 0
原创粉丝点击