1042. 字符统计(20)
2015-10-05 01:15
232 查看
请编写程序,找出一段给定文字中出现最频繁的那个英文字母。
输入格式:
输入在一行中给出一个长度不超过1000的字符串。字符串由ASCII码表中任意可见字符及空格组成,至少包含1个英文字母,以回车结束(回车不算在内)。
输出格式:
在一行中输出出现频率最高的那个英文字母及其出现次数,其间以空格分隔。如果有并列,则输出按字母序最小的那个字母。统计时不区分大小写,输出小写字母。
输入样例:
This is a simple TEST. There ARE numbers and other symbols 1&2&3………..
输出样例:
e 7
解题思路
1,水题
输入格式:
输入在一行中给出一个长度不超过1000的字符串。字符串由ASCII码表中任意可见字符及空格组成,至少包含1个英文字母,以回车结束(回车不算在内)。
输出格式:
在一行中输出出现频率最高的那个英文字母及其出现次数,其间以空格分隔。如果有并列,则输出按字母序最小的那个字母。统计时不区分大小写,输出小写字母。
输入样例:
This is a simple TEST. There ARE numbers and other symbols 1&2&3………..
输出样例:
e 7
解题思路
1,水题
[code]#include <iostream> #include <string> #include <map> using namespace std; bool isAlphabet(char & c){ if (c >= 'a' && c <= 'z'){ return true; } if (c >= 'A' && c <= 'Z'){ c = c - 'A' + 'a'; return true; } return false; } int main(){ string s; getline(cin, s); int a[26] = { 0 }; for (int i = 0; i < s.size(); i++){ if (isAlphabet(s[i])){ a[s[i] - 'a']++; } } int max_index = 0; for (int i = 0; i < 26; i++){ if (a[i] > a[max_index]){ max_index = i; } } cout << (char)(max_index + 'a') << " " << a[max_index]; }
相关文章推荐
- 机器学习笔记 线性判别分析(上)
- 为什么学习JavaEE
- LintCode "Delete Digits"
- Leetcode Word Search
- HDU 1213
- 【转】hadoop中map和reduce的数量设置问题
- 机器学习笔记 线性判别分析(中)
- Freescale Yocto Project搭建
- 原子操作 vs 非原子操作
- HDU 5135 Little Zu Chongzhi's Triangles (2014年广州赛区现场赛I题)
- CSS样式----图文详解(二):css属性
- 1041. 考试座位号(15)
- JNI字符串转字节数组指针方法
- 项目管理-成本管理
- Ubuntu 15.04趟坑笔记
- 解题报告 之 ZOJ 3329 One Person Game
- 字符串操作函数
- 掌握VS2010调试 -- 入门指南
- Nginx 引入线程池
- Leetcode那点事儿