Advertisement
Guest User

Untitled

a guest
Jun 19th, 2019
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.64 KB | None | 0 0
  1. #include <iostream>
  2. #include <vector>
  3. #include <algorithm>
  4.  
  5. using namespace std;
  6.  
  7. int n, k, m;
  8.  
  9. bool can(int m, vector<int> & v){
  10. long long x = 0;
  11. for (int i = 0; i < n; ++i) {
  12. x += v[i] / m;
  13. if(x >= k) break;
  14. }
  15. return x >= k;
  16. }
  17.  
  18. int main() {
  19. cin >> n >> k;
  20. vector <int> v(n);
  21. for (int i = 0; i < n; ++i) {
  22. cin >> v[i];
  23. }
  24. sort(v.begin(), v.end());
  25. int l = 0, r = v[n - 1] + 1;
  26. for (int j = 0; j < 1e4; ++j) {
  27. {
  28. m = l + (r - l) / 2;
  29. if (can(m, v)) l = m;
  30. else r = m;
  31. }
  32. }
  33. cout << m;
  34. return 0;
  35. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement