0
0
0
黄硕
高级守护
高级守护
2824 字母统计
题目描述 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
朱文博
中级守护
中级守护
先定义字符串s和整数n,输入。
接着从s的0下标开始,到<s.size()遍历,用a[s[i]]++存起来。
再从'a'到'z'遍历,如果在a数组中存在的话(也就是if(a[i])),
cout<<char(i)<<" "<<a[i]<<" ";。
大写也一样,从'A'到'Z'遍历,存在的话,输出。
好的,没了。
0
黄硕
高级守护
高级守护
还不对
#include<iostream>
#include<cstdio>
#include<cstring>
#include<string>
#include<cmath>
using namespace std;
int a[10010];
int main()
{
string s;
int n;
cin>>n;
cin>>s;
for(int i=0;i<s.size();i++)
{
a[s[i]]++;
}
for(int i='a';i<='z';i++)
{
if(a[i]!=0)
{
for(int j=1;j<=n;j++)
{
cout<<char(i)<<" "<<a[i]<<" ";
}
}
}
cout<<endl;
for(int i='A';i<='Z';i++)
{
if(a[i]!=0)
{
for(int j=1;j<=n;j++)
{
cout<<char(i)<<" "<<a[i]<<" ";
}
}
}
return 0;
}
0
黄硕
高级守护
高级守护
还是不对
#include<iostream>
#include<cstdio>
#include<cstring>
#include<string>
#include<cmath>
using namespace std;
int a[10010];
int main()
{
string s;
int n;
cin>>n;
cin>>s;
for(int i=0;i<s.size();i++)
{
a[s[i]]++;
}
for(int i='a';i<='z';i++)
{
if(a[i]!=0)
{
cout<<char(i)<<" "<<a[i]<<" ";
}
}
cout<<endl;
for(int i='A';i<='Z';i++)
{
if(a[i]!=0)
{
cout<<char(i)<<" "<<a[i]<<" ";
}
}
return 0;
}
0
0
0