제출 #1179453

#제출 시각아이디문제언어결과실행 시간메모리
117945312345678Self Study (JOI22_ho_t2)C++17
100 / 100
122 ms5204 KiB
#include<bits/stdc++.h> using namespace std; #define int long long signed main() { ios_base::sync_with_stdio(0); cin.tie(0); int n,m; cin>>n>>m; int a[n],b[n]; for(int i=0;i<n;i++) cin>>a[i]; for(int i=0;i<n;i++) cin>>b[i]; int l=0,r=3*1e18; while(l<r) { int mid=(l+r+1)/2; int cnt=0, f=0, vl; for(int i=0;i<n;i++) { if (cnt>n*m) break; int t=mid; if(b[i]>=a[i]) { vl=(t%b[i])?(t/b[i]+1):t/b[i]; if (cnt+vl>n*m) { f=1; break; } cnt+=vl; continue; } if(a[i]*m>=t) { vl=(t%a[i])?(t/a[i]+1):t/a[i]; if (cnt+vl>n*m) { f=1; break; } cnt+=vl; continue; } if (cnt+m>n*m) { f=1; break; } cnt+=m; t-=a[i]*m; vl=(t%b[i])?(t/b[i]+1):t/b[i]; if (cnt+vl>n*m) { f=1; break; } cnt+=vl; } //cout<<l<<" "<<r<<" "<<mid<<endl; if(!f) l=mid; else r=mid-1; } cout<<l; }
#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...