128152025-01-01 16:21:17MagyarKendeSZLGHázszámokcpp17Wrong answer 20/1002ms572 KiB
#include <bits/stdc++.h>
using namespace std;
#define int int64_t

const int MAXW = 12;

int32_t main() {
    cin.tie(0), ios::sync_with_stdio(0);
    int K;
    cin >> K;
    vector<int> a(K);
    cin >> a[K - 1];
    for (int i = 0; i < K - 1; i++) cin >> a[i];

    vector<int> pw(MAXW + 1, 1);
    for (int i = 1; i <= MAXW; i++) pw[i] = pw[i - 1] * K;

    auto f = [&](int n) -> bool {
        vector<int> req(K);
        for (int i = 1; i <= MAXW; i++) {
            int div = (n - (pw[i - 1] - 1)) / pw[i],
                rem = max((int)0, n - (pw[i - 1] - 1)) %
                      pw[i];
            for (int j = 0; j < K; j++) {
                req[j] += div * pw[i - 1];
                req[j] += min(rem, pw[i - 1]);
                if (req[j] > a[j]) return 0;
                rem -= min(rem, pw[i - 1]);
            }
        }
        return 1;
    };

    int l = 0, r = 1e14;
    while (r - l > 1) {
        int m = (r + l) / 2;
        if (!f(m)) {
            r = m;
        } else {
            l = m;
        }
    }
    cout << l << "\n";
}
SubtaskSumTestVerdictTimeMemory
subtask10/0
1Accepted1ms320 KiB
2Accepted1ms500 KiB
3Wrong answer1ms320 KiB
subtask20/25
4Wrong answer2ms428 KiB
5Wrong answer1ms320 KiB
6Accepted1ms320 KiB
7Accepted1ms320 KiB
8Accepted1ms428 KiB
9Accepted1ms428 KiB
10Wrong answer1ms568 KiB
11Accepted1ms320 KiB
12Accepted1ms508 KiB
13Accepted1ms320 KiB
14Accepted1ms320 KiB
15Accepted1ms320 KiB
16Accepted1ms508 KiB
17Accepted1ms320 KiB
18Accepted1ms320 KiB
19Accepted1ms320 KiB
subtask30/10
20Wrong answer1ms320 KiB
21Wrong answer1ms320 KiB
22Wrong answer1ms500 KiB
23Accepted1ms320 KiB
24Wrong answer1ms320 KiB
subtask40/15
25Wrong answer1ms320 KiB
26Wrong answer1ms320 KiB
27Wrong answer1ms568 KiB
28Wrong answer1ms320 KiB
29Wrong answer1ms500 KiB
30Accepted1ms320 KiB
31Wrong answer1ms320 KiB
32Accepted1ms320 KiB
33Accepted1ms320 KiB
subtask520/20
34Accepted1ms320 KiB
35Accepted1ms320 KiB
36Accepted1ms428 KiB
37Accepted1ms320 KiB
38Accepted1ms320 KiB
39Accepted1ms320 KiB
40Accepted1ms320 KiB
41Accepted1ms320 KiB
42Accepted1ms320 KiB
subtask60/30
43Wrong answer1ms320 KiB
44Wrong answer1ms320 KiB
45Wrong answer1ms428 KiB
46Wrong answer1ms320 KiB
47Wrong answer1ms320 KiB
48Accepted1ms320 KiB
49Accepted1ms320 KiB
50Accepted1ms380 KiB
51Accepted1ms428 KiB
52Accepted1ms320 KiB
53Wrong answer1ms320 KiB
54Wrong answer1ms572 KiB
55Wrong answer1ms320 KiB
56Wrong answer1ms320 KiB
57Wrong answer1ms508 KiB
58Wrong answer1ms320 KiB
59Accepted1ms500 KiB
60Accepted1ms320 KiB