HZNU1544众数问题

难道真的会有人来看这个题解吗?不会把..
我只是骗波阅读量(如果有关注就更好了[滑稽]) 大致的思路写在代码的注释里了,如有错误还望指正
/*                                                                    
 *            .,,       .,:;;iiiiiiiii;;:,,.     .,,                   
 *          rGB##HS,.;iirrrrriiiiiiiiiirrrrri;,s&##MAS,                
 *         r5s;:r3AH5iiiii;;;;;;;;;;;;;;;;iiirXHGSsiih1,               
 *            .;i;;s91;;;;;;::::::::::::;;;;iS5;;;ii:                  
 *          :rsriii;;r::::::::::::::::::::::;;,;;iiirsi,               
 *       .,iri;;::::;;;;;;::,,,,,,,,,,,,,..,,;;;;;;;;iiri,,.           
 *    ,9BM&,            .,:;;:,,,,,,,,,,,hXA8:            ..,,,.       
 *   ,;&@@#r:;;;;;::::,,.   ,r,,,,,,,,,,iA@@@s,,:::;;;::,,.   .;.      
 *    :ih1iii;;;;;::::;;;;;;;:,,,,,,,,,,;i55r;;;;;;;;;iiirrrr,..       
 *   .ir;;iiiiiiiiii;;;;::::::,,,,,,,:::::,,:;;;iiiiiiiiiiiiri         
 *   iriiiiiiiiiiiiiiii;;;::::::::::::::::;;;iiiiiiiiiiiiiiiir;        
 *  ,riii;;;;;;;;;;;;;:::::::::::::::::::::::;;;;;;;;;;;;;;iiir.       
 *  iri;;;::::,,,,,,,,,,:::::::::::::::::::::::::,::,,::::;;iir:       
 * .rii;;::::,,,,,,,,,,,,:::::::::::::::::,,,,,,,,,,,,,::::;;iri       
 * ,rii;;;::,,,,,,,,,,,,,:::::::::::,:::::,,,,,,,,,,,,,:::;;;iir.      
 * ,rii;;i::,,,,,,,,,,,,,:::::::::::::::::,,,,,,,,,,,,,,::i;;iir.      
 * ,rii;;r::,,,,,,,,,,,,,:,:::::,:,:::::::,,,,,,,,,,,,,::;r;;iir.      
 * .rii;;rr,:,,,,,,,,,,,,,,:::::::::::::::,,,,,,,,,,,,,:,si;;iri       
 *  ;rii;:1i,,,,,,,,,,,,,,,,,,:::::::::,,,,,,,,,,,,,,,:,ss:;iir:       
 *  .rii;;;5r,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,sh:;;iri        
 *   ;rii;:;51,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.:hh:;;iir,        
 *    irii;::hSr,.,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,sSs:;;iir:         
 *     irii;;:iSSs:.,,,,,,,,,,,,,,,,,,,,,,,,,,,..:135;:;;iir:          
 *      ;rii;;:,r535r:...,,,,,,,,,,,,,,,,,,..,;sS35i,;;iirr:           
 *       :rrii;;:,;1S3Shs;:,............,:is533Ss:,;;;iiri,            
 *        .;rrii;;;:,;rhS393S55hh11hh5S3393Shr:,:;;;iirr:              
 *          .;rriii;;;::,:;is1h555555h1si;:,::;;;iirri:.               
 *            .:irrrii;;;;;:::,,,,,,,,:::;;;;iiirrr;,                  
 *               .:irrrriiiiii;;;;;;;;iiiiiirrrr;,.                    
 *                  .,:;iirrrrrrrrrrrrrrrrri;:.                        
 *                        ..,:::;;;;:::,,.                             
 */  
 1 #include <stdio.h>
 2 
 3 int main() 
 4 {
 5     int n;
 6     scanf("%d",&n);
 7     
 8 //    int a[50000]; 注意到每次只需要统计输出的数的次数而不需要这个数本身,可以用一个临时变量now代替
 9     int now;
10      
11     int i, num[10000] = {0};//num[now] 表示 now 这个数字出现的次数 num[10000] = {0}相当于把整个数组清零 
12 
13     for (i = 0; i < n; i++) 
14     {
15 //        scanf("%d",&a[i]);
16 //        num[a[i]] = num[a[i]] + 1;
17 
18         scanf("%d",&now);//输入当前的数
19         num[now] = num[now] + 1;//把当前的数统计的次数+1 
20     }
21     
22     int MAX = 0;//记录出现次数最多的那个数(也就是众数)  出现的次数 
23     
24     for (now = 0; now < 10000; now++)
25     {
26         if (num[now] > MAX) MAX = num[now];
27     }
28     
29     int answer;
30     
31     for (now = 0; now < 10000; now++)
32     {
33         if (num[now] == MAX) //如果当前的数出现的次数和 出现次数最多的数一样多 那这个数就是众数 
34         {
35             answer = now;//因为是从小到大循环 所以第一次满足条件的数一定是所有满足条件的最小解 
36             break; 
37         }
38     }
39     
40     printf("%d\n",answer);
41     printf("%d",MAX);
42     return 0;
43 }
posted @ 2020-07-05 19:18  Kimyon  阅读(343)  评论(0编辑  收藏