您的程序发生段错误

#include "bits/stdc++.h"
using namespace std;
int main(){
    int n,a[10]={0};
    int x;
    cin>>n;
    for(int i=0;i<n;i++){
        cin>>x;
        a[x]++;
    }
    if(a[x]>n/2){
        cout<<x;
    }
    return 0;

全部评论
🤣🤣🤣
9 回复 分享
发布于 2020-12-20 17:11
orz
9 回复 分享
发布于 2020-12-20 17:11
😁😁😁
9 回复 分享
发布于 2020-12-20 17:08
希望对你有帮助
9 回复 分享
发布于 2020-12-20 17:08
通用性也更好
9 回复 分享
发布于 2020-12-20 17:08
程序的可读性更高
9 回复 分享
发布于 2020-12-20 17:07
不过最好是离散化一下
9 回复 分享
发布于 2020-12-20 17:07
不放心用unorderedmap
9 回复 分享
发布于 2020-12-20 17:07
用map
9 回复 分享
发布于 2020-12-20 17:07
或者手写hash
8 回复 分享
发布于 2020-12-20 17:07
#include "bits/stdc++.h" using namespace std; map<int,int> a;  int main(){     int n;     int x;     cin>>n;     for(int i=0;i<n;i++){         cin>>x;         a[x]++;         if(a[x]*2>n){             cout<<x;return 0;         }     }          return 0; }
1 回复 分享
发布于 2020-11-25 20:32
x 的范围是 10^9 不是 9 ,直接使用数组,下标不接受这么大的。可以考虑离散化,或者 map 之类的。而且循环嵌套的位置不太对。加油!(ง •_•)ง
点赞 回复 分享
发布于 2020-11-25 20:32

相关推荐

06-11 13:34
门头沟学院 C++
offe从四面八方来:我真的没时间陪你闹了
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务