This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const ll N = 2e5;
const ll inf = 1e18;
ll v[N],v2[N];
int main(){
ll n,m;
cin>>n>>m;
for(ll i = 0;i < n;i++){
cin>>v[i];
}
for(ll i = 0;i < n;i++){
cin>>v2[i];
v[i] = max(v[i],v2[i]);
}
ll l = 0,r = inf;
while(l != r){
ll mij = (l + r + 1)/2;
ll bonus = 0,req = 0;
for(ll i = 0;i < n;i++){
ll req2 = (mij + v[i] - 1)/v[i];
if(req2 <= m)bonus+=m - req2;
else{
req+=(mij - m*v[i] + v2[i] - 1)/v2[i];
}
}
//cout<<mij<<' '<<bonus<<' '<<req<<'\n';
if(bonus >= req){
l = mij;
}else r = mij - 1;
}
cout<<l<<'\n';
return 0;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |