0
已解决
周明轩
资深光能
资深光能
2824 字母统计经验值:0
题目描述 Description
现在有一行英文句子,里面包含大小写字母以及空格,字母个数(包含空格)不超过10万。
请你统计这个句子中每个字母出现的个数(不需要统计空格的个数)。
按照a~z的顺序输出。
第一行输出小写字母的个数
第二行输出大写字母的个数
输入描述 Input Description
输入一个整数n(n不超过100000),
第二行是总长度为n英文句子,包含大小写字母和空格
输出描述 Output Description
输出两行
第一行输出每个小写字母的个数空格隔开,a~z的顺序
第二行输出每个大写字母的个数空格隔开,A~Z的顺序
样例输入 Sample Input
17 I love Codingtang
样例输出 Sample Output
a 1 d 1 e 1 g 2 i 1 l 1 n 2 o 2 t 1 v 1 C 1 I 1
献上0分代码:
#include<bits/stdc++.h>
using namespace std;
int b[135];
int main()
{
int n,i,j,max=0,m;
cin>>n;
char c;
string ss;
cin>>ss;
for(int i=0;i<n;i++)
{
scanf("%c",&c);
b[int(c)]++;
}
for(int i=97;i<=97+28;i++)
{
if(b[i])
cout<<char(i)<<' '<<b[i]<<' ';
}
cout<<endl;
for(int i=65;i<=93;i++)
{
if(b[i])
cout<<char(i)<<' '<<b[i]<<' ';
}
return 0;
}