Submission #1269568

#TimeUsernameProblemLanguageResultExecution timeMemory
1269568biank비스킷 담기 (IOI20_biscuits)C++20
9 / 100
1095 ms328 KiB
#include "biscuits.h"
#include <bits/stdc++.h>

using namespace std;

#define forsn(i, s, n) for (int i = int(s); i < int(n); i++)
#define forn(i, n) forsn(i, 0, n)
#define dforsn(i, s, n) for (int i = int(n) - 1; i >= int(s); i--)
#define dforn(i, n) dforsn(i, 0, n)

#define all(x) begin(x), end(x)
#define sz(x) int(x.size())

using ll = long long;

ll count_tastiness(ll x, vector<ll> a) {
    ll sum = 0;
    forn(i, sz(a)) sum += a[i] << i;
    ll ret = 1;
    for (ll y = 1; y * x <= sum; y++) {
        vector<ll> c = a;
        ll need = x;
        while (need) {
            ll curr = y;
            dforn(i, sz(a)) {
                ll cnt = min(c[i], curr >> i);
                c[i] -= cnt, curr -= cnt << i;
            }
            if (curr == 0) need--;
            else break;
        }
        if (need == 0) ret++;
    }
    return ret;
}

#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...