fork download
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. #define int long long
  4. #define fi first
  5. #define se second
  6. #define siz(x) (int)(x.size())
  7. #define all(x) x.begin(), x.end()
  8. #define debug_arr(x,len) for(int _=1; _<=len; _++) cout<<x[_]<<" "; cout<<'\n';
  9. #define debug(x) cout<<'\n'<<#x<<": "<<x<<'\n';
  10. const int maxN = 1e5+5;
  11.  
  12. int n, m, p, a[maxN], b[maxN];
  13.  
  14. void solve()
  15. {
  16.  
  17. }
  18.  
  19. int32_t main()
  20. {
  21. freopen("CHECKIN.INP", "r", stdin);
  22. freopen("CHECKIN.OUT", "w", stdout);
  23. ios_base::sync_with_stdio(0); cin.tie(0);
  24. cin>>n>>m>>p;
  25. for(int i=1; i<=n; i+=1) cin>>a[i]>>b[i];
  26. int l = 0, r = 9e18, ans = 0;
  27. while(r - l >= 0)
  28. {
  29. int mid = (l+r)>>1;
  30. vector<int>v;
  31. for(int i=1; i<=n; i+=1) v.push_back(max(0ll, (mid - b[i]) / a[i]));
  32. sort(all(v), greater<int>());
  33. int tmp = 0, ok = 0;
  34. for(int i=0; i<min(n,m); i+=1) tmp += v[i];
  35. if(tmp >= p) ok = 1;
  36. if(ok) r = mid-1, ans = mid;
  37. else l = mid+1;
  38. }
  39. cout<<ans<<'\n';
  40. }
Success #stdin #stdout 0.01s 5312KB
stdin
Standard input is empty
stdout
Standard output is empty