#include "biscuits.h"
#include <iostream>
#include <queue>
#include <unordered_map>
#include <map>
#define ll long long
#define vec vector
#define For(i, n) for(ll i = 0; i < n; i++)
#define pii pair<int, int>
using namespace std;
long long count_tastiness(long long x, vector<long long> a) {
ll n = a.size();
ll vys = 0;
queue<pii> q;
q.push({0, 0});
map<pii, ll> umap;
umap[{0, 0}] = 1;
while(!q.empty()){
ll i = q.front().first, j = q.front().second; q.pop();
cerr << i << ' ' << j << endl;
ll hod = umap[{i, j}];
if(i == n){
vys += hod * ((j/x) + 1);
continue;
}
for(ll k = 0; k*x <= j; k++){
if(k == 0) cerr << k << ' ' << x << ' ' << j << endl;
ll nj = (j - (k*x)) / 2;
nj += a[i];
auto pp = umap.find({i+1, nj});
if(pp == umap.end()){
q.push({i+1, nj});
}
umap[{i+1, nj}] += hod;
}
}
return vys;
}
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |