제출 #1366221

#제출 시각아이디문제언어결과실행 시간메모리
1366221kawhietSelf Study (JOI22_ho_t2)C++20
100 / 100
81 ms5132 KiB
#include <bits/stdc++.h>
using namespace std;

#ifdef LOCAL
#include "debug.h"
#else
#define dbg(...) 47
#endif

#define int long long

signed main() {
    ios::sync_with_stdio(false);
    cin.tie(nullptr);
    int n, m;
    cin >> n >> m;
    vector<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];
        a[i] = max(a[i], b[i]);
    }
    auto ok = [&](int k) {
        int cnt = 0;
        for (int i = 0; i < n; i++) {
            if (k <= a[i] * m) {
                cnt += (k + a[i] - 1) / a[i];
            } else {
                cnt += m + (k - a[i] * m + b[i] - 1) / b[i];
            }
            if (cnt > n * m) {
                return false;
            }
        }
        return cnt <= n * m;
    };
    int l = 0, r = 2e18;
    while (l + 1 < r) {
        int m = (l + r) / 2;
        if (ok(m)) {
            l = m;
        } else {
            r = m;
        }
    }
    cout << l << '\n';
    return 0;
}
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…