제출 #1302160

#제출 시각아이디문제언어결과실행 시간메모리
1302160nathlol2Self Study (JOI22_ho_t2)C++20
100 / 100
96 ms5144 KiB
#include <bits/stdc++.h> #define int long long using namespace std; const int N = 333333; int n, m, a[N], b[N]; int _div(int _a, int _b){ if(_a % _b) return _a / _b + 1; return _a / _b; } bool ok(int x){ int cnt = 0; for(int i = 1;i<=n;i++){ if(a[i] * m < x){ cnt += m + _div(x - a[i] * m, b[i]); }else{ cnt += _div(x, a[i]); } if(cnt > n * m) return 0; } return 1; } signed main(){ ios_base::sync_with_stdio(false); cin.tie(NULL); cin >> n >> m; for(int i = 1;i<=n;i++) cin >> a[i]; for(int i = 1;i<=n;i++) cin >> b[i], a[i] = max(a[i], b[i]); int l = 1, r = 1e18, ans = 1; while(l <= r){ int md = (l + r) / 2; if(ok(md)){ ans = md; l = md + 1; }else{ r = md - 1; } } cout << ans; }
#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...