UVa - 156 Ananagrams(STL)
来源:互联网 发布:linux内核开发流程 编辑:程序博客网 时间:2024/05/01 03:16
题目链接:http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=19294
#include <iostream>#include <algorithm>#include <string>#include <vector>#include <map>using namespace std;/*************************************************************************************************************** 题意:找出不能通过字母重重排的单词,按字典序输出(came 和 mace 属于重排单词,不能输出) 思路: 1,熟悉STL的用法 2,压栈用原字符串,处理用小写单词,输出原串***************************************************************************************************************/vector <string> words;map <string,int> cnt;string fuc(string s){ string ans=s; for(int i = 0;i < ans.length();i ++) if(isalpha(ans[i])) //判断是否为小写字母,返回0是非小写字母,否则是 ans[i]=tolower(ans[i]); //将小写字母转换成大写字母 sort(ans.begin(),ans.end()); return ans;}int main(){ string s; while(cin>>s,s != "#") { words.push_back(s); string temp=fuc(s); if(!cnt.count(temp)) cnt[temp]=0; cnt[temp]++; } vector <string> ans; for(int i = 0;i < words.size();i ++) if(cnt[fuc(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;}
0 0
- UVa - 156 Ananagrams(STL)
- uva 156 Ananagrams STL
- UVa 156 Ananagrams(STL,map)
- UVa 156 Ananagrams(STL,map)
- UVa 156 - Ananagrams【各种stl】
- UVa 156 Ananagrams 【STL】【map】
- uva 156 Ananagrams STL处理
- uva 156 Ananagrams(字符串+STL应用)
- UVa - 156 - Ananagrams(STL - 映射map)
- UVA 156 Ananagrams(stl,map,set)
- UVa-156-Ananagrams STL map容器的使用练习题
- UVa 156 - Ananagrams
- uva 156 Ananagrams
- UVA 156 - Ananagrams
- UVA 156 - Ananagrams
- UVa 156 - Ananagrams
- uva 156 - Ananagrams
- uva- 156-Ananagrams
- 学习jquery小测试 自娱自乐
- null和""的区别详解
- 【第四章】 资源 之 4.3 访问Resource ——跟我学spring3
- 信号量的初始值
- linux驱动中的等待队列头
- UVa - 156 Ananagrams(STL)
- 关于Ping和Tracert命令原理详解
- 1-2 Fibonacci sequence
- UVa - 10474 Where is the Marble?(STL)
- Android开发本地及网络Mp3音乐播放器(十五)网络音乐及歌词下载功能实现
- UVa - 10815 Andy's First Dictionary(STL)
- linux的内核定时器
- poj 1692 Crossed Matchings(DP)
- pull解析