Uva156 map容器的使用 sortvecor And map.count
2016-07-30 09:57
399 查看
题目连接
http://acm.hust.edu.cn/vjudge/problem/297728Sample Input
ladder came tape soon leader acme RIDE lone Dreis peatScAlE orb eye Rides dealer NotE derail LaCeS drIed
noel dire Disk mace Rob dries
#
Sample Output
DiskNotE
derail
drIed
eye
ladder
soon
题意
对一堆字符串进行判断,找出其中没有把单词重组之后仍存在于这堆字符串中的字符串。例如came与acme就不行,可以重组得到。题解
string可以直接sort得到按字典序排序的单词,map.count(1)可以计数key出现的次数,vector< string >按sort之后得到按字典序排序的字符串。代码
#include<bits/stdc++.h> using namespace std; map<string,int> s; vector<string>words; string tr(string &s) { string ss=s; for(int i=0;i<ss.length();i++) { ss[i]=tolower(ss[i]); } sort(ss.begin(),ss.end()); return ss; } int main() { string st; while(cin>>st) { if(st[0]=='#')break; string r=tr(st); words.push_back(st); if(s.count(r)==0)s[r]=1; else s[r]++; } vector<string>ans; for(int i=0;i<words.size();i++) { if(s[tr(words[i])]==1)ans.push_back(words[i]); } sort(ans.begin(),ans.end()); for(int i=0;i<ans.size();i++) { cout<<ans[i]<<endl; } return 0; }
相关文章推荐
- 浏览器指纹的消除
- android--进度框(ProgressBar)
- [2016-7-29]每日总结
- 编写OC代码时的注意事项
- CodeForces 702 A Maximum Increase (贪心,高效算法)
- GIS基础软件及操作(七)
- Visual Studio Code 怎么支持中文
- UVA 536 - Tree Recovery
- linux 查看CPU个数
- 常用数据库高可用和分区解决方案(2) — Oracle篇
- Linux下的ELF可执行文件学习总结
- 一道新题的备忘,目前并不会解
- 学习忠告
- STM32自学笔记——定时器及PWM输出
- tjut 4655
- super关键字
- 5-35 有理数均值 (20分)
- Dynamic Invocation in Scala
- HDU 5524 (完全二叉树节点种类分析)
- poj 3686 The Windy's