Submission #834046

#TimeUsernameProblemLanguageResultExecution timeMemory
834046finn__Packing Biscuits (IOI20_biscuits)C++17
0 / 100
1072 ms340 KiB
#pragma GCC optimize("Ofast")
#pragma GCC target("avx,avx2,sse4")

#include "biscuits.h"
#include <memory.h>

using L = long long;

constexpr int N = 128;

L a[N], x;

int dfs(size_t i = 0, L z = 0)
{
    if (!(a[i] + z))
        return 1;
    int ans = dfs(i + 1, (a[i] + z) >> 1);
    if (a[i] + z >= x)
        ans += dfs(i + 1, (a[i] + z - x) >> 1);
    return ans;
}

L count_tastiness(L x_, std::vector<L> a_)
{
    x = x_;
    memset(a, 0, sizeof a);
    copy(a_.begin(), a_.end(), a);
    return dfs();
}
#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...