HDU 1029 Ignatius and the Princess IV

解题报告:

题目大意:就是要求输入的N个数里面出现的次数最多的数是哪一个,水题。暴力可过,定义一个一位数组,先用memset函数初始化,然后每次输入一个数就将下标对应的上标对应的那个数加一,最后将整个数组都扫一遍, 看哪一个最大就可以了。

 1 #include<cstdio>
 2 #include<cstring>
 3 int times[1000005];
 4 
 5 int main() {
 6     int N,d;
 7     while(scanf("%d",&N)!=EOF) {
 8         memset(times,0,sizeof(times));
 9         for(int i = 1;i<=N;++i) {
10             scanf("%d",&d);
11             times[d]++;
12         }
13         int max = 0;
14         for(int i = 0;i<=1000000;++i)
15         if(times[i]>times[max])
16         max = i;
17         printf("%d\n",max);
18     }
19     return 0;
20 } 
21              
22     
View Code

 

posted @ 2013-07-05 23:05  xiaxiaosheng  阅读(159)  评论(0编辑  收藏  举报