hpnq

cses_1620

Dec 10th, 2024
105
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.30 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2.  
  3. #define loop(x, n) for (ll i = x; i < n; i++)
  4. #define joop(x, n) for (ll j = x; j < n; j++)
  5. #define pb push_back
  6. #define all(x) x.begin(), x.end()
  7. #define sz(x) x.size()
  8. #define f first
  9. #define s second
  10. #define table(x) for (auto i : x) { for (auto j : i) {cout << j << " ";}cout << '\n';}
  11. #define mod 1000000007
  12. #define pii pair<int, int>
  13. #define piic pair<int, pair<int, int>>
  14. #define mp make_pair
  15. #define inf 1000000000
  16. //# define DEBUG 1
  17.  
  18. using namespace std;
  19. typedef long long ll;
  20.  
  21.  
  22. ll bp(vector<ll> & arr, ll value){
  23. //    cout << value << " ";
  24.     ll l = 0;
  25.     ll r = 1e18;
  26.     ll ans = 0;
  27.     while(l < r){
  28.         ll m = (l+r)/2;
  29.         ll s = 0;
  30.  
  31.         loop(0, sz(arr)){
  32.             s += m/arr[i];
  33.             if(s >= value){
  34.                 break;
  35.             }
  36.         }
  37.  
  38.         if(s >= value){
  39.             r = m;
  40.             ans = m;
  41.         }else{
  42.             l = m+1;
  43.         }
  44.     }
  45.     return l;
  46. }
  47.  
  48. void solve() {
  49.     int n, m;
  50.     cin >> n >> m;
  51.     vector<ll> c(n);
  52.     ll minn = 1e9;
  53.     loop(0, n){
  54.         cin >> c[i];
  55.         minn = min(minn, c[i]);
  56.     }
  57.  
  58.  
  59.  
  60.     cout <<  bp(c, m) ;
  61.  
  62.  
  63. }
  64.  
  65. int main() {
  66. #ifdef DEBUG
  67.     freopen("text.txt", "r", stdin);
  68. #else
  69. #endif
  70.     solve();
  71.     return 0;
  72.  
Add Comment
Please, Sign In to add comment