fork download
  1. #include <bits/stdc++.h>
  2. #define int long long
  3. #define ld long double
  4. #define pb push_back
  5. #define fo(i,n) for(i=0;i<n;i++)
  6. #define fo1(i,n) for(int i=1;i<=n;i++)
  7. #define fok(i,k,n) for(int i=k;i<=n;i++)
  8. #define rfo(i,n) for(int i=n;i>=0;i--)
  9. #define rfo1(i,n) for(int i=n;i>0;i--)
  10. #define all(c) c.begin(),c.end()
  11. #define rall(c) c.rbegin(),c.rend()
  12. #define si set<int>
  13. #define vi vector<int>
  14. #define mii map<int,int>
  15. #define pii pair<int,int>
  16. #define usi unordered_set<int>
  17. #define umii unordered_map<int,int>
  18. #define pqmx priority_queue<int>
  19. #define pqmn priority_queue<int,vi,greater<int> >
  20. #define sp(x,y) fixed<<setprecision(y)<<x
  21. #define setbits(x) __builtin_popcount(x)
  22. #define zerobits(x) __builtin_ctz(x)
  23. #define in(a,n) vi a(n);fo(i,n)cin>>a[i];
  24. #define in1(a,n) vi a(n+1);fo1(i,n)cin>>a[i];
  25. #define w(t) int t;cin>>t;while(t--)
  26. #define endl '\n'
  27. #define mod 1000000007
  28. #define inf 1e18
  29. using namespace std;
  30.  
  31. const int N=1e6+6;
  32. int n,m,k,x,y,z,a1,b,c,d,i,j,l,r;
  33.  
  34.  
  35.  
  36.  
  37.  
  38. void sol()
  39. {
  40. cin>>n>>x;
  41. in(a,n);
  42. int mx=0;
  43. for(auto c:a)mx=max(mx,c);
  44. l=0,r=mx*x+1;
  45. int ans;
  46. while(l<=r)
  47. {
  48. int mid=l+(r-l)/2;
  49. int sum=0;
  50. for(auto c:a) sum+=mid/c;
  51. if(sum<x) l=mid+1;
  52. else {r=mid-1;ans=mid;}
  53.  
  54. }
  55.  
  56. cout<<ans;
  57. }
  58.  
  59.  
  60.  
  61.  
  62.  
  63. int32_t main(){
  64.  
  65. ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);
  66. // w(t)
  67. sol();
  68. return 0;
  69. }
Success #stdin #stdout 0s 4196KB
stdin
Standard input is empty
stdout
Standard output is empty