Uva 10815(string,set,vector,unique)安迪的第一个字典

来源:互联网 发布:sql找不到存储过程 编辑:程序博客网 时间:2024/06/05 23:04
输入一个文本,找出所有不同的单词(连续的字母序列),按字典序从小到大输出。 单词不区分大小写。

#include<iostream>#include<set>#include<string>#include<sstream>using namespace std;string s,buf;set<string> st;int main(){    while(cin>>s)    {        for(int i=0; i<s.length(); ++i)            if(isalpha(s[i])) s[i]=tolower(s[i]);            else s[i]=' ';        stringstream ss(s);        while(ss>>buf) st.insert(buf);    }    for(set<string>::iterator it=st.begin();it!=st.end();++it)    cout<<*it<<endl;    return 0;}

#include<iostream>#include<algorithm>#include<vector>#include<string>#include<sstream>using namespace std;string s,buf;vector<string> a;int main(){    while(cin>>s)    {        for(int i=0; i<s.length(); ++i)            if(isalpha(s[i])) s[i]=tolower(s[i]);            else s[i]=' ';        stringstream ss(s);        while(ss>>buf) a.push_back(buf);    }    sort(a.begin(),a.end());    int n=unique(a.begin(),a.end())-a.begin();    for(int i=0; i<n; ++i)        cout<<a[i]<<endl;    return 0;}


原创粉丝点击