fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3.  
  4. #define int long long
  5. #define sz(x) x.size()
  6. #define all(v) v.begin(), v.end()
  7. #define allr(v) v.rbegin(), v.rend()
  8. #define F first
  9. #define S second
  10.  
  11. bool canForm(vector<int> &students, int k, int councils)
  12. {
  13. int sum = 0;
  14. for (int x : students)
  15. sum += min(x, councils);
  16. return sum >= councils * k;
  17. }
  18.  
  19. void solve()
  20. {
  21. int k, n; cin >> k >> n;
  22. vector<int> a(n);
  23. int l = -1, r;
  24. for (int i = 0; i < n; ++i) cin >> a[i], r += a[i];
  25. while (l < r - 1)
  26. {
  27. int mid = l + (r - l) / 2;
  28. if (canForm(a, k, mid))
  29. l = mid;
  30. else
  31. r = mid;
  32. }
  33. cout << l;
  34. }
  35.  
  36. signed main()
  37. {
  38. ios_base::sync_with_stdio(false), cin.tie(nullptr);
  39. int tc = 1;
  40. // cin >> tc;
  41. while (tc--)
  42. {
  43. solve();
  44. if (tc)
  45. cout << '\n';
  46. }
  47. return 0;
  48. }
Success #stdin #stdout 0.01s 5320KB
stdin
Standard input is empty
stdout
75413707382245