专栏文章
题解:CF2014C Robin Hood in Town
CF2014C题解参与者 1已保存评论 0
文章操作
快速查看文章及其快照的属性,并进行相关操作。
- 当前评论
- 0 条
- 当前快照
- 1 份
- 快照标识符
- @miqlot4h
- 此快照首次捕获于
- 2025/12/04 06:50 3 个月前
- 此快照最后确认于
- 2025/12/04 06:50 3 个月前
题目传送门:Robin Hood in Town
思路:
这道题很简单,如果 就输出 ,否则先排序,排好序之后找到数组中正中间的一个数,它就是平均数,最后,我们用这个平均数去倒推就行了。
本题千万不要忘了开 long long!
AC Code:
CPP#include<bits/stdc++.h>
#define ll long long
using namespace std;
ll a[200010],t,n,sum,p,m;
int main(){
cin>>t;
while(t--){
cin>>n;
sum=0;
for(int i=1;i<=n;i++){
cin>>a[i];
sum+=a[i];
}
if(n<=2){
cout<<"-1\n";continue;
}
sort(a+1,a+1+n);
p=a[n/2+1];
m=p*2*n+1;
ll ck=0;
cout<<max(ck,m-sum)<<endl;
}
}
相关推荐
评论
共 0 条评论,欢迎与作者交流。
正在加载评论...