题目大意是找出数组中出现次数超过一半的数。

基本思想:每遇到两个不同的数就消掉,设一个计数器就行了。

       存出现次数最大的那个数的出现次数。

     当下一个数与当前的数不同时,计数器减一,相同,则加一。

实现代码

 #include <iostream>
#include <stdio.h>
using namespace std; int main()
{
int n,x,m_max,cnt; // while(cin>>n)
while(scanf("%d",&n)!=EOF)
{ cnt = ;
// while(n--)
for(int i = ;i<n;i++)//相比之下,for的运行时间更少,所以能用for的,不要用while
{
// cin>>x;
scanf("%d",&x);
if(!cnt)
{
m_max = x;
cnt++;
}
else if(x!=m_max) cnt--;
else if(x==m_max) cnt++;
}
// cout<<m_max<<endl;
printf("%d\n",m_max);
}
return ;
}

最新文章

  1. ASP.NET Web API Model-ActionBinding
  2. sublime自定义快键键不行,
  3. 当一个activity中按钮过多时怎么办?
  4. IBM服务器 IMM日志收集
  5. 《Android开发艺术探索》读书笔记 (10) 第10章 Android的消息机制
  6. 虚拟机比较(wiki)
  7. Zend Studio 12 大集合
  8. npm note
  9. Android尽量避免使用开发jpg图片
  10. HTTP认证方式与https简介
  11. Maven快速使用阿里云的代理maven仓库
  12. Bootstrap File Input 中文文档
  13. Windows内核开发之串口过滤
  14. JQ JS复制到剪贴板
  15. python之三级菜单作业
  16. 将IP地址转化为整数
  17. 【转】LINQ多表关联关联条件
  18. ZOJ-3962-数位dp
  19. apple 下安装mysql 以及 碰到的问题
  20. 多进程(了解):守护进程,互斥锁,信号量,进程Queue与线程queue(生产者与消费者模型)

热门文章

  1. 程序员:统治世界or修复bug?
  2. 详细解析Linux /etc/passwd文件
  3. springcloud15---zuul-fallback
  4. Django学习笔记之form组件的局部钩子和全局钩子
  5. 一个PE文件的逆向分析
  6. Spring Data JPA 关系映射(一对一,一对多,多对多 )
  7. 从零开始,使用Docker Swarm部署集群教程
  8. 教你上传代码到码云(与github一样)
  9. SSM(Spring+SpringMVC+Mybatis)+Mysql 框架整合搭建流程以及其间注意事项
  10. 史上最强大的40多个纯CSS绘制的图形[转]