码迷,mamicode.com
首页 > 其他好文 > 详细

(周六赛) Vertical Histogram

时间:2015-02-09 22:58:17      阅读:154      评论:0      收藏:0      [点我收藏+]

标签:

题意:统计字母的个数,以“*”号输出

 

 1 #include<stdio.h>
 2 #include<algorithm>
 3 #include<string.h>
 4 int main()
 5 {
 6     char str[4][100];
 7     char map[100][100];
 8     int i,j;
 9     int a[100];
10     while(gets(str[0]))
11     {
12         memset(a,0,sizeof(a));
13         memset(map, ,sizeof(map));
14         for(i=1;i<4;i++)
15         {
16             gets(str[i]);
17         }
18         for(i=0;i<4;i++)
19         {
20             int l=strlen(str[i]);
21             for(j=0;j<l;j++)
22             {
23                 if(str[i][j]>=A&&str[i][j]<=Z)
24                 {
25                     a[str[i][j]-A]++;
26                 }
27             }
28         }
29         int max=0;
30         for(i=0;i<26;i++)
31         {
32             if(max<a[i])
33                 max=a[i];
34         }
35         for(i=0;i<26;i++)//lie
36         {
37             for(j=0;j<max;j++)//hang
38             {
39                 if(j>=(max-a[i]))
40                     map[j][i]=*;
41             }
42             map[max][i]=i+A;
43         }
44         for(j=0;j<=max;j++)//hang
45         {
46             for(i=25;i>=0;i--)//lie
47             {
48                 if(map[j][i]==*)
49                 {
50                     map[j][i+1]=1;
51                     break;
52                 }
53             }
54         }
55         for(j=0;j<=max;j++)//hang
56         {
57             for(i=0;i<26;i++)//lie
58             {
59                 if(map[j][i]==1)
60                     break;
61                 printf("%c",map[j][i]);
62                 if(i!=25&&map[j][i+1]!=1)
63                     printf(" ");
64             }
65             printf("\n");
66         }
67     }
68     return 0;
69 }

 

(周六赛) Vertical Histogram

标签:

原文地址:http://www.cnblogs.com/awsent/p/4282646.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!