제출 #1149167

#제출 시각아이디문제언어결과실행 시간메모리
1149167njoopSelf Study (JOI22_ho_t2)C++17
35 / 100
91 ms4956 KiB
#include <bits/stdc++.h> #define int long long using namespace std; int n, m, a[300010], b[300010]; bool solve(int num) { int clnum = 0; for(int i=1; i<=n; i++) { if(a[i] <= b[i]) { clnum += num/b[i] + (num%b[i] ? 1 : 0); } else if(num/a[i] + (num%a[i] ? 1 : 0) <= n){ clnum += num/a[i] + (num%a[i] ? 1 : 0); } else { clnum += n; int t = num - a[i]*n; clnum += t/b[i] + (t%b[i] ? 1 : 0); } if(clnum > n*m) return false; } return true; } signed main() { cin.tie(0)->sync_with_stdio(0); cin >> n >> m; for(int i=1; i<=n; i++) { cin >> a[i]; } for(int i=1; i<=n; i++) { cin >> b[i]; } int l=0, r=1e18; while(l < r) { int mid = (l+r)/2; if(solve(mid)) { l = mid+1; } else { r = mid; } } cout << l-1; return 0; }
#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...