题目链接

https://pintia.cn/problem-sets/994805260223102976/problems/994805280817135616

题解

用数组count存储字母出现次数,数组下标代表字母,数组元素是次数。遍历字符串,统计各字母出现次数,最后遍历count寻找出现次数最多的字母。

// PAT BasicLevel 1042
// https://pintia.cn/problem-sets/994805260223102976/problems/994805280817135616 #include <iostream>
#include <string>
using namespace std; int main()
{
// 26个字母计数
int count[26];
fill(count,count+26,0); // 获取字符串
string str;
getline(cin, str); // 字符串可能包含空格 // 统计字符出现次数
for(int i=0;i<str.length();++i){
if(isalpha(str[i])){
count[tolower(str[i])-'a']++;
}
} // 寻找出现最频繁的英文字母(其实可以在统计的时候进行)
int maxCount=-1;
int maxIndex=0;
for(int i=0;i<26;++i){
if(count[i]>maxCount){ // 用于实现数量并列则输出字母序最小的那个字母
maxCount = count[i];
maxIndex = i;
}
} // 输出结果
cout << char('a' + maxIndex)<< ' ' << maxCount; //system("pause");
return 0;
}

作者:@臭咸鱼

转载请注明出处:https://www.cnblogs.com/chouxianyu/

欢迎讨论和交流!


最新文章

  1. IIS访问共享文件详解
  2. 结构及其使用 struct (C#)
  3. 再谈collections模块defaultdict()和namedtuple()
  4. VBA中练习ADO:ActiveX Data Object
  5. acm算法模板(5)
  6. java按值传递相关理解
  7. javascript对象与实例
  8. CSS书写规范、顺序
  9. Nginx——location常见配置指令,alias、root、proxy_pass
  10. ODAC(V9.5.15) 学习笔记(八)TOraScript
  11. 基于虹软sdk,java实现人脸识别(demo)
  12. msp430学习笔记-ADC12
  13. Angular 快速学习笔记(1) -- 官方示例要点
  14. [POI2013]Morskie opowieści
  15. Delphi XE5 android 获取网络状态《转》
  16. Vue.js教程--基础2(事件处理 表单输入绑定
  17. Windows Server2008 R2中的角色
  18. 【[HEOI2016/TJOI2016]字符串】
  19. PAT——1005. 继续(3n+1)猜想 (25)
  20. Redis(五):Redis的持久化

热门文章

  1. Leetcode之236. Lowest Common Ancestor of a Binary Tree Medium
  2. 有关IP和子网掩码的总结
  3. Vue.js 关于双向绑定的一些实现细节
  4. 大周末的不休息,继续学习pandas吧,pandas你该这么学,No.7
  5. Hadoop 之 HDFS API操作
  6. [转帖]什么是WAL?
  7. 什么是云解析DNS?
  8. javaweb中关于转发与重定向的写法
  9. Kubernetes---资源控制器之ReplicationController、ReplicaSet和Deployment
  10. 网络流基础&amp;网络流24题