加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

1186:出现次数超过一半的数

发布时间:2020-12-13 17:32:15 所属栏目:PHP教程 来源:网络整理
导读:传送门:http://ybt.ssoier.cn:8088/problem_show.php?pid=1186 ? 1186:出现次数超过一半的数 时间限制: 1000 ms ??? ??? 内存限制: 65536 KB 提交数: 5616 ??? 通过数: 2614 【题目描述】 给出一个含有n(0 n ≤ 1000)个整数的数组,请找出其中出现次数超

传送门:http://ybt.ssoier.cn:8088/problem_show.php?pid=1186

?

1186:出现次数超过一半的数


时间限制: 1000 ms ??? ??? 内存限制: 65536 KB
提交数: 5616 ??? 通过数: 2614

【题目描述】

给出一个含有n(0 < n ≤ 1000)个整数的数组,请找出其中出现次数超过一半的数。数组中的数大于-50且小于50。

【输入】

第一行包含一个整数n,表示数组大小;

第二行包含n个整数,分别是数组中的每个元素,相邻两个元素之间用单个空格隔开。

?

【输出】

如果存在这样的数,输出这个数;否则输出no。

【输入样例】

3
1 2 2

【输出样例】

2

#include<iostream>
using namespace std;
#define N 310
int n,a[N],ci;
bool ans=false;
int main(){
    cin>>n;
    for(int i=1;i<=n;i++){
        cin>>ci;
        a[ci+100]++;
    }
    for(int i=1;i<N;i++)
    {
        if(a[i]>(n/2))cout<<i-100<<endl,ans=true;
    }
    if(!ans)cout<<"non";
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读