Submission #805370

# Submission time Handle Problem Language Result Execution time Memory
805370 2023-08-03T15:53:12 Z vjudge1 Self Study (JOI22_ho_t2) C++17
10 / 100
54 ms 11428 KB
#include<bits/stdc++.h>

using namespace std;
using ll = long long;

const int N = 3e5 + 10;
ll n, m;
ll A[N], B[N];

ll divi(ll a, ll b) {
    return (a + b - 1) / b;
}

bool check(ll x) {
    ll s = 0;
    for(int i = 0; i < n; i++) {
        if(B[i] >= A[i]) {
            s += divi(x, B[i]);
        } else {
            ll t = min(m, divi(x, A[i]));
            s += t + divi(max(x - t * A[i], 0ll), B[i]);
        }
    }
    return (s <= n * m);
}
const ll INF = 1000000000000000000;
ll solve() {
    ll l = 0, r = INF;
    while(r - l > 1) {
        ll mid = (l + r) / 2;
        if(check(mid)) l = mid;
        else r = mid;
    }
    return l;
}

// mt19937 rnd(14941);
// uniform_int_distribution<ll> ui(1, INF);
// void gen() {
//     for(int i = 0; i < n; i++)  
//         A[i] = rnd();
//     for(int i = 0; i < n; i++)  
//         B[i] = rnd();
// }
ll stupid() {
    ll mx = (ll)1e18;
    for(int i = 0; i < n; i++)
        mx = min(mx, max(A[i], B[i]));
    return mx;
}
int main() {
    ios::sync_with_stdio(0);
    cin.tie(0);cout.tie(0);
    cin >> n >> m;
    for(int i = 0; i < n; i++) 
        cin >> A[i];
    for(int i = 0; i < n; i++) 
        cin >> B[i];
    cout << stupid();
    // cout << solve();
    // int t = 1000;
    // do {
    //     gen();
    //     t--;
    // }
    // while(stupid() == solve() && t);
    // for(int i = 0; i < n; i++) 
    //     cout << A[i] << ' ';
    // cout << '\n';
    // for(int i = 0; i < n; i++) 
    //     cout << B[i] << ' ';
    // cout << '\n';
    // cout << "slow: " << stupid() << '\n';
    // cout << "fast: " << solve() << '\n';
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Correct 0 ms 212 KB Output is correct
4 Correct 0 ms 212 KB Output is correct
5 Correct 0 ms 212 KB Output is correct
6 Correct 0 ms 212 KB Output is correct
7 Correct 0 ms 212 KB Output is correct
8 Correct 1 ms 212 KB Output is correct
9 Correct 0 ms 212 KB Output is correct
10 Correct 1 ms 340 KB Output is correct
11 Correct 46 ms 4992 KB Output is correct
12 Correct 45 ms 4932 KB Output is correct
13 Correct 36 ms 4936 KB Output is correct
14 Correct 40 ms 4988 KB Output is correct
15 Correct 0 ms 212 KB Output is correct
16 Correct 23 ms 4928 KB Output is correct
17 Correct 54 ms 11428 KB Output is correct
18 Correct 49 ms 10796 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
2 Correct 23 ms 4928 KB Output is correct
3 Correct 54 ms 11428 KB Output is correct
4 Correct 49 ms 10796 KB Output is correct
5 Incorrect 0 ms 212 KB Output isn't correct
6 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Correct 0 ms 212 KB Output is correct
4 Correct 0 ms 212 KB Output is correct
5 Correct 0 ms 212 KB Output is correct
6 Correct 0 ms 212 KB Output is correct
7 Correct 0 ms 212 KB Output is correct
8 Correct 1 ms 212 KB Output is correct
9 Correct 0 ms 212 KB Output is correct
10 Correct 1 ms 340 KB Output is correct
11 Correct 46 ms 4992 KB Output is correct
12 Correct 45 ms 4932 KB Output is correct
13 Correct 36 ms 4936 KB Output is correct
14 Correct 40 ms 4988 KB Output is correct
15 Incorrect 0 ms 212 KB Output isn't correct
16 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 0 ms 212 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Correct 0 ms 212 KB Output is correct
4 Correct 0 ms 212 KB Output is correct
5 Correct 0 ms 212 KB Output is correct
6 Correct 0 ms 212 KB Output is correct
7 Correct 0 ms 212 KB Output is correct
8 Correct 1 ms 212 KB Output is correct
9 Correct 0 ms 212 KB Output is correct
10 Correct 1 ms 340 KB Output is correct
11 Correct 46 ms 4992 KB Output is correct
12 Correct 45 ms 4932 KB Output is correct
13 Correct 36 ms 4936 KB Output is correct
14 Correct 40 ms 4988 KB Output is correct
15 Incorrect 0 ms 212 KB Output isn't correct
16 Halted 0 ms 0 KB -