제출 #1086197

#제출 시각아이디문제언어결과실행 시간메모리
1086197I_am_Polish_GirlSelf Study (JOI22_ho_t2)C++14
0 / 100
1 ms416 KiB
//#pragma target("arch=icelake-server") #include <iostream> #include <vector> #include <algorithm> #include <map> #include <set> #include <unordered_map> #include <unordered_set> #include <stack> #include <queue> #include <cmath> #include <random> #include <chrono> #include <iomanip> #include <bitset> using namespace std; #define int long long typedef long long ll; typedef long double ld; int log_ = 11; int inf = 4000000007000000007; long long mod = 1000000007; int p = 499; int NADIYA = 39; signed main() { ios_base::sync_with_stdio(false); cin.tie(nullptr); cout.tie(nullptr); int n, m; cin >> n >> m; vector <int> a(n); vector <int> b(n); for (int i = 0; i < n; i++) cin >> a[i]; for (int i = 0; i < n; i++) cin >> b[i]; for (int i = 0; i < n; i++) { a[i] = max(a[i], b[i]); } int l = 0; int r = 1000000000000000000; while (r - l > 1) { int m = (l + r) / 2; int c = 0; for (int i = 0; i < n; i++) { if (m <= a[i] * n) { int x = ((m + a[i] - 1) / a[i]); c += (n - x); } else { int x = m - a[i] * n; int y = ((x + b[i] - 1) / b[i]); c -= y; } } if (c >= 0) l = m; else r = m; } cout << l; } /*5 1 2 1 2 3 1 2 4 1 1 5 4 */
#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...