博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
出现次数最多的整数
阅读量:6307 次
发布时间:2019-06-22

本文共 808 字,大约阅读时间需要 2 分钟。

问题描述

  编写一个程序,读入一组整数,这组整数是按照从小到大的顺序排列的,它们的个数N也是由用户输入的,最多不会超过20。然后程序将对这个数组进行统计,把出现次数最多的那个数组元素值打印出来。如果有两个元素值出现的次数相同,即并列第一,那么只打印比较小的那个值。
  输入格式:第一行是一个整数N,N £ 20;接下来有N行,每一行表示一个整数,并且按照从小到大的顺序排列。
  输出格式:输出只有一行,即出现次数最多的那个元素值。
输入输出样例
样例输入
5
100
150
150
200
250
样例输出
150
当输入的数不相同时temp会变回1;而count没有变回1; if (temp > count) {
count = temp;
b = a[i];
这个语句就能体现出如果两个元素值出现次数相同则打印最小的,因为例如如果最后一个是200,当temp再次变为2,但它不大于count,所以b不会变,还是上一个。
#include <iostream>
using namespace std;
int main() {
int n;
cin >> n;
if (n > 0) {
int *a = new int [n];
int b;
int count = 1;
int temp = 1;
cin >> a[0];
b = a[0];
for(int i = 1; i < n; i++) { cin >> a[i];
if (a[i] == a[i - 1]) {
temp++;
if (temp > count) {
count = temp;
b = a[i];
}
} else {
temp = 1;
}
}
cout << b;
delete [] a;
}
return 0;
}

转载于:https://blog.51cto.com/13176924/2088038

你可能感兴趣的文章
Java Web-----JSP与Servlet(一)
查看>>
Maven搭建SpringMVC+Mybatis项目详解
查看>>
关于量子理论:最初无意的简化,和一些人有意的强化和放大
查看>>
CentOS 6.9通过RPM安装EPEL源(http://dl.fedoraproject.org)
查看>>
“区块链”并没有什么特别之处
查看>>
没有功能需求设计文档?对不起,拒绝开发!
查看>>
4星|《先发影响力》:影响与反影响相关的有趣的心理学研究综述
查看>>
IE8调用window.open导出EXCEL文件题目
查看>>
python之 列表常用方法
查看>>
vue-cli脚手架的搭建
查看>>
在网页中加入百度搜索框实例代码
查看>>
在Flex中动态设置icon属性
查看>>
采集音频和摄像头视频并实时H264编码及AAC编码
查看>>
3星|《三联生活周刊》2017年39期:英国皇家助产士学会于2017年5月悄悄修改了政策,不再鼓励孕妇自然分娩了...
查看>>
linux查看命令是由哪个软件包提供的
查看>>
高级Linux工程师常用软件清单
查看>>
堆排序算法
查看>>
folders.cgi占用系统大量资源
查看>>
路由器ospf动态路由配置
查看>>
zabbix监控安装与配置
查看>>