只是说统计出现超过n+1/2 的数字 和编程之美上的发帖水王 类似的解法
http://acm.hdu.edu.cn/showproblem.php?pid=1029
#include<iostream>
int main()
{
int i,n,num,currnum,ans;
while(scanf("%d",&n)!=EOF)
{
scanf("%d",&num);
currnum = num;
ans = 1;
for(i = 1 ; i < n; i ++)
{
scanf("%d",&num);
if(ans == 0)
currnum = num,ans ++;
else if(num != currnum)
{
ans --;
}
else if (num == currnum)
ans ++;
}
printf("%d\n",currnum);
}
return 0;
}
posted on 2010-06-01 22:46
付翔 阅读(295)
评论(0) 编辑 收藏 引用 所属分类:
ACM 数据结构