Submission #1264404

#TimeUsernameProblemLanguageResultExecution timeMemory
1264404happyboySelf Study (JOI22_ho_t2)C++20
100 / 100
220 ms5112 KiB
#include <bits/stdc++.h> using namespace std; long long n,m,a[300001],b[300001]; bool c(long long x){ long long p=n*m,c=0; for (int i=1;i<=n;i++){ long long tx=x; if (a[i]>b[i]){ p-=min(m,(tx-1)/a[i]+1); tx-=a[i]*m; } if (tx>0) c+=(tx-1)/b[i]+1; if (c>p) return 0; } return 1; } int main(){ cin>>n>>m; for (int i=1;i<=n;i++) cin>>a[i]; for (int i=1;i<=n;i++) cin>>b[i]; long long l=1,r=1e18,mi; while (l<=r){ mi=(l+r)/2; if (c(mi)) l=mi+1; else r=mi-1; } cout<<r<<"\n"; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...