题解 CF534C 【Polycarpus' Dice】
看代码:
#include<bits/stdc++.h>//万能头文件
using namespace std;
int main()
{
long long n,d[200005],a,ans=0;//定义,记得开long long
cin>>n>>a;
for(long long i=1;i<=n;i++)
{
cin>>d[i];
ans+=d[i];//算和
}//读入
for(long long i=1;i<=n;i++)
{
long long hhh=min(a-n+1,d[i]);//最大的
long long zzz=0;
if(a+d[i]-ans-1>0)
zzz=a+d[i]-ans-1;//最小的
//abs(zzz-hhh)就是可行的情况
cout<<d[i]-abs(zzz-hhh)<<" ";//输出
}
cout<<endl;//输出换行
return 0;//完美结束
}
//最后感谢我们的hello_world2005给我们的参考
By 你们最可爱的czy
QwQwQ