B.这题还是很简单的,动一点脑子就行了啊,,,就去找n-1个相等的数x,这个数要满足的条件:1.(n-1)*x大于等于总和sum,2、x>max ,这是很明显的两个条件,而且也只有这两个条件,想清楚了就好了。
cin>>t;
while(t--){
sum=0;
Max=0;
ans=0;
cin>>n;
for(i=1;i<=n;i++)
{
cin>>a[i];
sum+=a[i];
Max=max(Max,a[i]);
}
m=ceil(sum*1.0/(n-1));
x=max(m,Max);
for(i=1;i<=n;i++){
ans+=x-a[i];
}
ans-=x;
cout<<ans<<endl;
}
C.模板题,好水的C题,通过数都快赶上A题了。
D.就是一个斐波那契数列,但是比赛时我没想明白,感觉好像是斐波那契,也没去试,我自己找的规则是,n的答案就是小于n的所有奇数相加(n是偶数),小与n的所有偶数答案相加(n是奇数)。这是我认真推理出来的结果,但是和斐波那契数列的区别就是有些奇数会少一,我还是很自信的去尝试,然然后代码写的也不好,一直在爆一直调试,最后也没能通过,不过答案还是就是一个斐波那契数列,直接尝试去做可能时间就够就能做出来了。