1. 程式人生 > >【BZOJ】2456 mode(亂搞)

【BZOJ】2456 mode(亂搞)

出現 include con ont num print ros most 空格

Description

給你一個n個數的數列,其中某個數出現了超過n div 2次即眾數,請你找出那個數。

Input

第1行一個正整數n。
第2行n個正整數用空格隔開。

Output

一行一個正整數表示那個眾數。

Sample Input

5
3 2 3 1 3

Sample Output

3

HINT

100%的數據,n<=500000,數列中每個數<=maxlongint。



zju2132 The Most Frequent Number

----------------------------------------------------------------------

分析:這真是一道妙題啊。。。

 1 #include <cstdio>
 2 #include <algorithm>
 3 using namespace std;
 4 int main()
 5 {
 6     int a,tmp,n,num,f=0;
 7     scanf("%d",&n);
 8     for(int i=0;i<n;i++)
 9     {
10         scanf("%d",&a);
11         if(f<=0)
12         {
13             f=1
; 14 num=a; 15 continue; 16 } 17 if(a==num) f++; 18 else f--; 19 } 20 printf("%d",num); 21 return 0; 22 }

【BZOJ】2456 mode(亂搞)