UVA 156 Ananagrams
来源:互联网 发布:为什么淘宝衣服很便宜 编辑:程序博客网 时间:2024/06/05 12:42
STL的应用
#include<map>#include<cstdio>#include<string>#include<vector>#include<cstring>#include<iostream>#include<algorithm>using namespace std;string str, s;map<string, int>mp;vector<string>V, ans;void recordStr(string s){ //cout << "here" << " " << s << endl; for(int i = 0;i < s.size();i ++) if(s[i] >= 'A' && s[i] <= 'Z') s[i] += 32; sort(s.begin(), s.end()); map<string, int>::iterator it = mp.find(s); if(it == mp.end()) mp.insert(pair<string, int>(s, 1)); else it->second ++;}bool isOnce(string s){ for(int i = 0;i < s.size();i ++) if(s[i] >= 'A' && s[i] <= 'Z') s[i] += 32; sort(s.begin(), s.end()); map<string, int>::iterator it = mp.find(s); return it->second == 1;}int main(){ //freopen("in.cpp", "r", stdin); while(getline(cin, str, '\n') && str != "#"){ //cout << str << endl; str += " "; for(int i = 0;i < str.size();i ++){ if(str[i] == ' '){ if(s.empty()) continue; recordStr(s); V.push_back(s); s.clear(); }else s.append(1, str[i]); } str.clear(); } for(int i = 0;i < V.size();i ++) if(isOnce(V[i])) ans.push_back(V[i]); sort(ans.begin(), ans.end()); for(int i = 0;i < ans.size();i ++) cout << ans[i] << endl; return 0;}
0 0
- UVa 156 - Ananagrams
- uva 156 Ananagrams
- UVA 156 - Ananagrams
- UVA 156 - Ananagrams
- UVa 156 - Ananagrams
- uva 156 - Ananagrams
- uva- 156-Ananagrams
- UVa 156 - Ananagrams
- UVA 156 - Ananagrams
- UVa 156 - Ananagrams
- UVa 156 - Ananagrams
- UVA 156 Ananagrams
- uva 156 - Ananagrams
- UVa - 156 - Ananagrams
- uva 156 Ananagrams
- UVa 156 - Ananagrams
- UVA - 156 - Ananagrams
- Uva:156 - Ananagrams
- Python串口编程(转载)
- 类模板template的使用!
- date命令设置时间
- Java:String和Date、Timestamp之间的转换
- [HDOJ 4893] Wow! Such Sequence! [线段树]
- UVA 156 Ananagrams
- Javascript创建自定义对象
- NSLog的格式
- view跟水平滚动条一起滑动
- flac文件提取专辑封面手记
- 布局管理器(章节摘要)
- 第三章 数组和字符串
- 邮件服务器实例(debian+posfix+cyrus+squirrelmail)
- hdu 1003 Max Sum dp