AC me

来源:互联网 发布:手机淘宝论坛怎么找 编辑:程序博客网 时间:2024/05/21 19:23
#include "stdafx.h"
#include<iostream>
using namespace std;
#include<iomanip>
#include <string>  


int main()  
{  
    int n,i;
char buf[ 100000];
int letter[26];
while(gets(buf)) 
{
for (i = 0; i < 26; i++)
letter[i] = 0;
n=strlen(buf);
for(i=0;i<n;i++)
if(buf[i]>='a'&&buf[i]<='z')
letter[buf[i]-'a']++;
for(i=0;i<26;i++)
cout<<(char)(i+'a')<<":"<<letter[i]<<endl;
cout<<endl;

}
   system("Pause");
    return 0;  
}  


本题的大概思路是有的,可是自己的方法比较笨居然想着case一个一个对应的去查找,原来只需要


用偏离距离就可以搞定,这个是他人的答案启发后才想到的。其次就是关于char的字符数组的输入


,我刚开始直接使用的cin>>buf,后来编译运行才发现它可以接收数据,但是每个空格它就认为是


下一组数据了,所以最后用了gets来实现一行字符数组的输入。
0 0