1 条题解
-
0
#include<bits/stdc++.h> using namespace std; // [1] arr数组统计26个小写字母出现次数,索引1-26对应a-z,初始化为0 int arr[30]={}; int main() { string s; cin>>s; int n=s.size(); // [2] n记录输入字符串的长度 // [3] 基础循环:遍历字符串,统计每个小写字母的出现次数 for(int i=0;i<n;i++){ // 将字符映射为1-26的索引(a→1,z→26),并计数 arr[s[i]-'a'+1]++; } // [4] 初始化最大次数为第一个字母(a)的次数,最大索引为1(对应a) int max_num=arr[1],max_m=1; // [5] 基础循环:遍历26个小写字母的统计结果,筛选目标字母 for(int i=1;i<=26;i++){ // 若当前字母次数≥已记录的最大次数,更新最大次数和对应索引 // 用>=保证次数相同时,保留索引更大的字母(即ASCII码更大的字母) if(arr[i]>=max_num){ max_num=arr[i]; max_m=i; } } // [6] 将最大索引映射回小写字母并输出(索引1→a,2→b...) cout<<char('a'+max_m-1); return 0; }
- 1
信息
- ID
- 1208
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 3
- 标签
- 递交数
- 1
- 已通过
- 1
- 上传者