1071. Speech Patterns (25)
来源:互联网 发布:mac卸载office 编辑:程序博客网 时间:2024/06/05 16:14
题目链接:https://www.patest.cn/contests/pat-a-practise/1071
题目大意:给出一个字符串,以回车结束。找出字符串中的非字母和数字字符,然后将整个字符串在这些非字母数字字符出切割,得到若干个由字母数字组成的单词,找出数量最多的单词
解题思路:
- map的使用
- isalnum()和tolower()的使用
代码如下:
#include <iostream>#include <cstdio>#include <cstring>#include <map>#include <cctype>using namespace std;int main(int argc, char const *argv[]){ string s; getline(cin,s); map<string,int> alpha; string tmp=""; for(int i=0;i<s.length();i++){ if(isalnum(s[i])){//判断是否是a-z,A-Z,0-9 //转为小写 s[i]=tolower(s[i]); tmp+=s[i]; } else{ if(tmp!="") alpha[tmp]++; tmp=""; } } if(tmp!="") alpha[tmp]++; int max=-1;//最大个数 string maxs;//个数最大的字母 for(auto iter=alpha.begin();iter!=alpha.end();iter++){ if(iter->second>max){ max=iter->second; maxs=iter->first; } else if(iter->second==max){//个数相同 if(iter->first<maxs){//按字母表排序 maxs=iter->first; } } } cout<<maxs<<" "<<max<<endl; return 0;}
阅读全文
1 0
- 1071. Speech Patterns (25)
- 1071. Speech Patterns (25)
- 1071. Speech Patterns (25)
- 1071. Speech Patterns (25)
- 1071. Speech Patterns (25)
- 1071. Speech Patterns (25)
- 1071. Speech Patterns (25)
- 1071. Speech Patterns (25)
- 1071. Speech Patterns (25)
- 1071. Speech Patterns (25)
- 1071. Speech Patterns (25)
- 1071. Speech Patterns (25)
- 1071. Speech Patterns (25)
- 1071. Speech Patterns (25)
- 1071. Speech Patterns (25)
- 1071. Speech Patterns (25)
- 1071. Speech Patterns (25)
- 1071. Speech Patterns (25)
- request中getParameter(),getAttribute()区别
- Hive 之 join大全
- centos7下面yum安装软件报错,显示找不到镜像地址。
- android 运行jar
- 敏捷开发模式的修炼之道
- 1071. Speech Patterns (25)
- maven下的ssm框架的简单构建
- HDU-6055 Regular polygon
- 设计模式之建造者模式
- bzoj3196 Tyvj 1730 二逼平衡树
- Android中MVP模式的实例
- vue2+webpack2 初始化项目
- SpringMVC学习之JSTL条件行为和遍历行为
- 使用UrhoSharp