Submission #769731

#TimeUsernameProblemLanguageResultExecution timeMemory
769731boris_mihovPacking Biscuits (IOI20_biscuits)C++17
0 / 100
1 ms340 KiB
#include "biscuits.h"
#include <algorithm>
#include <iostream>
#include <numeric>
#include <cassert>
#include <vector>

typedef long long llong;
const int MAXN = 64;
const int INF = 1e9;

int n;
llong x;
llong a[MAXN];

llong rec(int pos, __int128 prenos)
{
    if (pos == n)
    {
        return 1;
    }

    llong ans = 0;
    __int128 curr = a[pos] + prenos;
    if (curr >= x) ans += rec(pos + 1, (curr - x) / 2);
    ans += rec(pos + 1, curr / 2);
    return ans;
}

llong count_tastiness(llong X, std::vector <llong> A)
{
    n = A.size();
    x = X;

    llong sum = 0;
    for (int i = 0 ; i < n ; ++i)
    {
        a[i] = A[i];
    }

	return rec(0, 0);
}

Compilation message (stderr)

biscuits.cpp: In function 'llong count_tastiness(llong, std::vector<long long int>)':
biscuits.cpp:35:11: warning: unused variable 'sum' [-Wunused-variable]
   35 |     llong sum = 0;
      |           ^~~
#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...