//很久之前寫的,入個檔
1126: 第二章:我們都有夢想
Time Limit: 1 Sec Memory Limit: 128 MB
Submit: 500 Solved: 161
[Submit][Status][Web Board]
Description
林靜究竟在忙什麼?暑假沒有回家,現在打電話到他宿舍總是不在,鄭微通過他的舍友給他留了自己的電話,也不見他回覆。明明上火車的前兩天鄭微還跟林靜通過電話,他在那一頭答應得好好的,等她到了廣州,他就會帶她到處去玩,吃遍廣州的小吃,當時鄭微沒有感覺到絲毫的異樣,就連他的笑聲也是一如既往地帶着她熟悉的寵溺和寬容。
可是現在鄭微沒忘記兩人的約定,林靜卻蹤影全無。難道是她打錯了電話?不可能!那個電話她倒着也能背出來,何況那邊接電話的舍友明明也是認得林靜的,只是說他不在。
不在不在,老是不在!還說是個模範好學生,不知道跑到哪鬼混去了!鄭微氣鼓鼓地想,等到見了面,非把他數落一頓不可。
有點不高興的鄭薇手裏拿着一封已經封上了口的信,裏面寫滿了她想對林靜說的話,但此時的她小心將信封撕開,想再看一遍寫下時的那份甜蜜。
你要做的就是對一篇文章的字母進行統計。 而文章是由好多行字母,空格,標點組成的每行不會超過72個字符,請打印一個統計直方圖來統計每個字母出現的次數 (不統計空行,數字,標點)。
Input
輸入一份鄭薇的甜言蜜語,只含有大小寫字符,空格,標點。
Output
打印這一份甜蜜的統計圖,具體如樣例(最後不要空行)。
Sample Input
Amazing grace! How sweet the sound!
That saved a wretch like me!
I once was lost but now I am found,
Was blind but now I see.
Sample Output
*
*
* *
* * *
* * * * * * *
* * * * * * * *
* * * * * * * *
* * * * * * * * * * *
* * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * * * * *
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
HINT
出國的林靜並沒有告訴鄭薇任何消息。
AC_code:
Source
#include <stdio.h>
#include <string.h>
int a[100];
char c[100][100];
char b[100000];
int main()
{
memset(a,0,sizeof(a));
memset(b,'\0',sizeof(b));
memset(c,' ',sizeof(c));
const char e[] ="A B C D E F G H I J K L M N O P Q R S T U V W X Y Z";
int k = 0,h;
while((h = scanf("%c",&b[k++]))!=EOF);
for(int i = 0; b[i] !='\0'; i++)
{
if(b[i] >= 'A'&& b[i] <= 'Z')
{
a[b[i]-'A']++;
}
else if(b[i] >= 'a'&& b[i] <= 'z')
{
a[b[i]-'a']++;
}
}
int max_c = a[0];
for(int i = 1; i< 26; i++)
if(a[i] > max_c) max_c = a[i];
int f = 0;
for(int j =0; j < 51; j+=2)
{
for(int i = max_c-1; ; )
{
while(a[f]--)
{
c[i--][j] = '*';
}
if(a[f] == -1) break;
}
f++;
if(f > 26) break;
}
for(int i = 0; i < max_c; i++)
{
for(int j = 0; j < 51; j++)
printf("%c",c[i][j]);
printf("\n");
}
for(int i = 0; e[i]!='\0'; i++)
printf("%c",e[i]);
return 0;
}