洛谷—— P1407 工资

https://www.luogu.org/problemnew/show/P1407

题目描述

有一家世界级大企业,他们经过调查,发现了一个奇特的现象,竟然在自己的公司里,有超过一半的雇员,他们的工资完全相同!

公布了这项调查结果后,众多老板对于这一现象很感兴趣,他们发现在自己的公司也存在有这样的现象——超过一半的雇员工资都是x。老板们都很想知道这个x是多少,请你帮忙计算一下。

输入输出格式

输入格式:

 

输入:(gold.in)

第一行输入一个t,表示有t家公司找你帮忙判断。

之后t行,第i行的第一个数字为Ai表示第i个公司的雇员数,之后Ai个数字表示雇员的工资。

 

输出格式:

 

输出:(gold.out)

共输出t行,第i行表示第i个公司的x。(如题意表述)

 

输入输出样例

输入样例#1:  复制
2
5 0 2 0 2 2
4 2 3 3 3
输出样例#1:  复制
2
3

说明

数据范围:

t<=10,且员工的资产是10^9以内的非负整数。

70%数据满足Ai<=1000

100% 数据满足Ai<=1000000内存限制 1MB

 

 

因为满足存在半数以上的ai,所以一定会出现连续的ai,且在区间[1,n]中cnt[ai]>n/2(废话。。)

 1 #include <cstdio>
 2 
 3 inline void read(int &x)
 4 {
 5     x=0; register char ch=getchar();
 6     for(; ch>'9'||ch<'0'; ) ch=getchar();
 7     for(; ch>='0'&&ch<='9'; ch=getchar()) x=x*10+ch-'0';
 8 }
 9 
10 int Presist()
11 {
12     int t,n,ans;
13     read(t);
14     for(int cnt,now; t--; )
15     {
16         cnt=0; read(n);
17         for(int i=1; i<=n; ++i)
18         {
19             read(now);
20             if(!cnt) ans=now;
21             if(ans==now) cnt++;
22             else cnt--;
23         }
24         printf("%d\n",ans);
25     }
26     return 0;
27 }
28 
29 int Aptal=Presist();
30 int main(int argc,char**argv){;}

 

转载于:https://www.cnblogs.com/Shy-key/p/7860330.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值