#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
int base;
// I have no idea how this works, just started messing around with formulas on
// OEIS and got this working
// calculates the number of `d` digits used from `1..n`
ll pog(ll n, int d) {
if (n <= 0)
return 0;
ll r = n % base;
ll q = n / base;
ll res = q + (r + 1) * pog(q, d) + (base - r - 1) * pog(q - 1, d);
if (d != 0 && r >= d)
return res + 1;
return res;
}
int main() {
cin >> base;
vector<ll> budget(base);
for (auto &b : budget)
cin >> b;
auto is_enough = [&](int n) {
for (int i = 0; i < base; i++) {
ll a = pog(n, i);
if (a > budget[i])
return false;
}
return true;
};
ll curr = 0;
for (int i = 20; i >= 0; i--) {
ll next = curr + (1ll << i);
if (is_enough(next)) {
curr = next;
}
}
cout << curr;
}
Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
---|---|---|---|---|---|---|---|
subtask1 | 0/0 | ||||||
1 | Elfogadva | 32ms | 1732 KiB | ||||
2 | Elfogadva | 3ms | 1856 KiB | ||||
3 | Hibás válasz | 3ms | 2096 KiB | ||||
subtask2 | 25/25 | ||||||
4 | Elfogadva | 32ms | 2344 KiB | ||||
5 | Elfogadva | 35ms | 2588 KiB | ||||
6 | Elfogadva | 34ms | 2768 KiB | ||||
7 | Elfogadva | 3ms | 2924 KiB | ||||
8 | Elfogadva | 3ms | 3136 KiB | ||||
9 | Elfogadva | 3ms | 3352 KiB | ||||
10 | Elfogadva | 34ms | 3556 KiB | ||||
11 | Elfogadva | 3ms | 3812 KiB | ||||
12 | Elfogadva | 3ms | 3888 KiB | ||||
13 | Elfogadva | 3ms | 4020 KiB | ||||
14 | Elfogadva | 3ms | 4196 KiB | ||||
15 | Elfogadva | 3ms | 4308 KiB | ||||
16 | Elfogadva | 3ms | 4364 KiB | ||||
17 | Elfogadva | 3ms | 4240 KiB | ||||
18 | Elfogadva | 2ms | 4248 KiB | ||||
19 | Elfogadva | 3ms | 4480 KiB | ||||
subtask3 | 0/10 | ||||||
20 | Időlimit túllépés | 261ms | 4432 KiB | ||||
21 | Időlimit túllépés | 263ms | 4452 KiB | ||||
22 | Időlimit túllépés | 268ms | 4328 KiB | ||||
23 | Elfogadva | 30ms | 4456 KiB | ||||
24 | Időlimit túllépés | 300ms | 4564 KiB | ||||
subtask4 | 0/15 | ||||||
25 | Időlimit túllépés | 264ms | 4536 KiB | ||||
26 | Hibás válasz | 14ms | 4668 KiB | ||||
27 | Hibás válasz | 4ms | 4668 KiB | ||||
28 | Hibás válasz | 4ms | 4700 KiB | ||||
29 | Hibás válasz | 3ms | 4680 KiB | ||||
30 | Elfogadva | 3ms | 4680 KiB | ||||
31 | Hibás válasz | 3ms | 4672 KiB | ||||
32 | Hibás válasz | 3ms | 4672 KiB | ||||
33 | Hibás válasz | 3ms | 4796 KiB | ||||
subtask5 | 0/20 | ||||||
34 | Elfogadva | 3ms | 4796 KiB | ||||
35 | Elfogadva | 2ms | 4816 KiB | ||||
36 | Hibás válasz | 3ms | 4788 KiB | ||||
37 | Hibás válasz | 3ms | 4796 KiB | ||||
38 | Hibás válasz | 3ms | 4916 KiB | ||||
39 | Hibás válasz | 3ms | 4800 KiB | ||||
40 | Hibás válasz | 3ms | 4796 KiB | ||||
41 | Hibás válasz | 3ms | 4676 KiB | ||||
42 | Hibás válasz | 3ms | 4788 KiB | ||||
subtask6 | 0/30 | ||||||
43 | Időlimit túllépés | 300ms | 4764 KiB | ||||
44 | Hibás válasz | 14ms | 4816 KiB | ||||
45 | Hibás válasz | 4ms | 4792 KiB | ||||
46 | Hibás válasz | 4ms | 4792 KiB | ||||
47 | Hibás válasz | 3ms | 4788 KiB | ||||
48 | Hibás válasz | 3ms | 4672 KiB | ||||
49 | Hibás válasz | 3ms | 4672 KiB | ||||
50 | Hibás válasz | 3ms | 4676 KiB | ||||
51 | Hibás válasz | 3ms | 4672 KiB | ||||
52 | Elfogadva | 32ms | 4672 KiB | ||||
53 | Hibás válasz | 14ms | 4796 KiB | ||||
54 | Hibás válasz | 4ms | 4676 KiB | ||||
55 | Hibás válasz | 4ms | 4788 KiB | ||||
56 | Hibás válasz | 3ms | 4788 KiB | ||||
57 | Hibás válasz | 3ms | 4676 KiB | ||||
58 | Hibás válasz | 3ms | 4672 KiB | ||||
59 | Hibás válasz | 3ms | 4676 KiB | ||||
60 | Hibás válasz | 3ms | 4788 KiB |