为什么后面的二分如果改成if(s<=M)还有cout<<l<<endl;的话就只能得十分
题目给的输入输出案例都是对的QAQ
sort(q, q + n, cmp);
int l = 0, r = q[0];
while (l < r)
{
int mid = l + r >> 1;
s = 0;//!!!
for (int i = 0; i < n; i++)
{
if (q[i] > mid) s += q[i] - mid;
else break;
}
if (s < M) r = mid;
else l = mid + 1;
}
cout << l-1 << endl;
return 0;
}