52452023-04-23 18:46:34ZsofiaKeresztelyHázszámokcpp14Elfogadva 100/1003ms4792 KiB
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
vector<ll> lim;
int k;

vector<int> convert(ll n){
    vector<int> r;
    while (n){
        r.push_back(n % k);
        n /= k;
    }
    return r;
}

bool ok(ll m, vector<int> n){
    vector<ll> req(k, 0);
    ll power = 1;
    for (int i=0; i<n.size(); i++){
        ll quo = m / (power * k);
        for (int j=0; j<n[i]; j++){
            req[j] += power * (quo + 1);
        }
        req[n[i]] += m % power + 1;
        for (int j=n[i]; j<k; j++){
            req[j] += power * quo;
        }
        req[0] -= power;
        for (int j=0; j<k; j++){
            if (req[j] > lim[j]) return 0;
        }
        power *= k;
    }
    return 1;
}

int main()
{
    cin >> k;
    lim.resize(k);
    for (ll &x : lim){
        cin >> x;
    }
    ll l = 1, r = 1e13;
    while (l + 1 < r){
        ll m = (l + r) / 2;
        if (ok(m, convert(m))){
            l = m;
        }
        else{
            r = m;
        }
    }
    cout << l;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva3ms1684 KiB
2Elfogadva3ms1924 KiB
3Elfogadva3ms2012 KiB
subtask225/25
4Elfogadva3ms2152 KiB
5Elfogadva3ms2512 KiB
6Elfogadva3ms2596 KiB
7Elfogadva3ms2712 KiB
8Elfogadva3ms2776 KiB
9Elfogadva2ms2972 KiB
10Elfogadva3ms3216 KiB
11Elfogadva3ms3300 KiB
12Elfogadva3ms3396 KiB
13Elfogadva3ms3508 KiB
14Elfogadva3ms3508 KiB
15Elfogadva3ms3484 KiB
16Elfogadva3ms3716 KiB
17Elfogadva3ms3688 KiB
18Elfogadva3ms3824 KiB
19Elfogadva3ms4064 KiB
subtask310/10
20Elfogadva3ms4152 KiB
21Elfogadva3ms4152 KiB
22Elfogadva3ms4264 KiB
23Elfogadva3ms4120 KiB
24Elfogadva3ms4144 KiB
subtask415/15
25Elfogadva3ms4244 KiB
26Elfogadva3ms4348 KiB
27Elfogadva3ms4240 KiB
28Elfogadva3ms4232 KiB
29Elfogadva3ms4124 KiB
30Elfogadva3ms4124 KiB
31Elfogadva3ms4280 KiB
32Elfogadva3ms4268 KiB
33Elfogadva3ms4388 KiB
subtask520/20
34Elfogadva3ms4268 KiB
35Elfogadva3ms4520 KiB
36Elfogadva3ms4516 KiB
37Elfogadva3ms4488 KiB
38Elfogadva3ms4484 KiB
39Elfogadva3ms4508 KiB
40Elfogadva3ms4496 KiB
41Elfogadva3ms4484 KiB
42Elfogadva3ms4480 KiB
subtask630/30
43Elfogadva3ms4488 KiB
44Elfogadva3ms4484 KiB
45Elfogadva3ms4480 KiB
46Elfogadva3ms4604 KiB
47Elfogadva3ms4604 KiB
48Elfogadva3ms4600 KiB
49Elfogadva3ms4600 KiB
50Elfogadva3ms4480 KiB
51Elfogadva3ms4480 KiB
52Elfogadva3ms4484 KiB
53Elfogadva3ms4512 KiB
54Elfogadva3ms4484 KiB
55Elfogadva3ms4600 KiB
56Elfogadva3ms4548 KiB
57Elfogadva3ms4660 KiB
58Elfogadva3ms4792 KiB
59Elfogadva3ms4688 KiB
60Elfogadva3ms4712 KiB