8 条题解
-
0
#include <bits/stdc++.h> #define endl '\n' using namespace std; typedef pair<int,int> PII; using ll = long long; using ULL = unsigned long long; const int N = 1e6+5; ll n ,m, a[N]; bool check(ll mid) { ll sum = 0; for (int i = 0; i < n; i++) if (a[i] > mid) sum += a[i] - mid; return sum >= m; } inline void solve() { cin >> n >> m; ll l = 0, r = 0; for (int i = 0; i < n; i++) { cin >> a[i]; r = max(r,a[i]); } while (l < r) { ll mid = (l + r + 1) >> 1; if (check(mid)) l = mid; else r = mid -1; } cout << l << endl; } int main() { ios::sync_with_stdio(0), cin.tie(0), cout.tie(0); int _ = 1; //int _; cin >> _; while (_--) solve(); return 0; }
信息
- ID
- 89
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 7
- 标签
- 递交数
- 1684
- 已通过
- 362
- 上传者