我来练二分的,哪个大佬跟我说下这个check函数错哪了,谢谢
bool check(ll mid) { ll sh = m; for (ll i = 1; i < n; i++) { if (a[i] < mid) {//如果最大值a[n-1]也小,应该操作 sh -= mid - a[i]; } else { if (i != i - 1) { sh += a[i] - mid; } } } if (sh >= 0) { return true; } else { return false; } }