rt,始终没调出来
#include <bits/stdc++.h>
using namespace std;
int tr[1145141],qz[1145141];
int n;
int main()
{
int n,m,tot=0;
cin>>n>>m;
for(int i=0;i<n;i++)
{
cin>>tr[i];
tot+=tr[i];
}
sort(tr,tr+n);
qz[0]=tr[0];
int wh;
for(int i=1;i<n;i++)
{
qz[i]=qz[i-1]+tr[i];
if(tot-qz[i]-(tr[i]*(n-i-1))<=m&&((tot-qz[i-1]-(tr[i-1]*(n-i-2))>m)||(i==n-1))) { wh=i; break; }
}
int ans=11451419;
for(int i=tr[wh-1];i<=tr[wh];i++)
{
int ii=i;
int to=tot-((n-wh-1)*ii)-ii;
if(to>=m)
{
ans=min(ans,to);
}
}
cout<<ans-2;
return 0;
}