出现次数超过一半的数,28次数超过一半

作者: 计算机网络  发布:2019-09-23

28:出现次数超越五成的数

  • 查看
  • 提交
  • 统计
  • 提问

总时间范围: 
1000ms

内部存款和储蓄器限制: 
65536kB

描述
交付一个含有n(0 < n <= 一千)个整数的数组,请找寻里面出现次数超越一半的数。

数组中的数当先-50且小于50。

输入
率先行满含贰个整数n,表示数组大小;
其次行李包裹涵n个整数,分别是数组中的各类成分,相邻七个因素之间用单个空格隔绝。

输出
假定存在那样的数,输出那个数;不然输出no。

样例输入
3 1 2 2

样例输出
2

来源
习题(13-6)

别忘了负数

 1 #include<iostream>
 2 using namespace std;
 3 int a[10001];
 4 int main()
 5 {
 6     int n;
 7     cin>>n;
 8     for(int i=1;i<=n;i++)
 9     {
10         int c;
11         cin>>c;
12         a[c+50]++;
13         if(n%2==1)
14         {
15             if(a[c+50]>=(n/2+1))
16             {
17                 cout<<c;
18                 return 0;
19             }
20         }
21         else
22         {
23             if(a[c+50]>(n/2))
24             {
25                 cout<<c;
26                 return 0;
27             }
28         }
29     }
30     cout<<"no";
31     return 0;
32 }

 

28:出现次数超过五成的数,二十七次数当先二分之一

28:出现次数抢先二分一的数

  • 查看
  • 提交
  • 统计
  • 提问

总时限: 
1000ms

内存限制: 
65536kB

描述
交付一个含有n(0 < n <= 1000)个整数的数组,请搜索里面出现次数超越四分之二的数。

数组中的数抢先-50且小于50。

输入
率先行包含一个整数n,表示数组大小;
第二行满含n个整数,分别是数组中的各样成分,相邻三个要素之间用单个空格隔断。

输出
倘使存在这么的数,输出那么些数;不然输出no。

样例输入
3 1 2 2

样例输出
2

来源
习题(13-6)

别忘了负数

 1 #include<iostream>
 2 using namespace std;
 3 int a[10001];
 4 int main()
 5 {
 6     int n;
 7     cin>>n;
 8     for(int i=1;i<=n;i++)
 9     {
10         int c;
11         cin>>c;
12         a[c+50]++;
13         if(n%2==1)
14         {
15             if(a[c+50]>=(n/2+1))
16             {
17                 cout<<c;
18                 return 0;
19             }
20         }
21         else
22         {
23             if(a[c+50]>(n/2))
24             {
25                 cout<<c;
26                 return 0;
27             }
28         }
29     }
30     cout<<"no";
31     return 0;
32 }

 

28:出现次数当先二分之一的数 查看 提交 总计 提问 总时间范围: 一千ms 内部存款和储蓄器限制: 65536kB 描述 给出二个...

本文由今晚开什么码发布于计算机网络,转载请注明出处:出现次数超过一半的数,28次数超过一半

关键词: