| # | Time | Username | Problem | Language | Result | Execution time | Memory |
|---|---|---|---|---|---|---|---|
| 1357501 | opeleklanos | Packing Biscuits (IOI20_biscuits) | C++20 | 1055 ms | 2162688 KiB |
#include <iostream>
#include <vector>
using namespace std;
#define ll long long
vector<ll> a;
vector<vector<ll>> dp;
ll solveBruteforce(ll x, vector<ll> A){
if(x>100000) return 1;
ll ans = 0;
for(ll i = 0; i<100000; i++){
vector<ll> t(64, 0);
for(int j = 0; j<a.size(); j++) t[j] = a[j];
ll isAns = 1;
for(ll j = 0; j<t.size()-1; j++){
if(((ll)((ll)1<<(ll)j)) & i){
if(t[j] < x){
isAns = 0;
break;
}
t[j] -= x;
}
t[j+1] += t[j]/2;
}
ans += isAns;
}
return ans;
}
ll count_tastiness(ll x, vector<ll> A){
a.assign(64, 0);
for(ll i = 0; i<A.size(); i++) a[i] = A[i];
for(ll i = 0; i<a.size()-1; i++){
if((a[i]>=x) && ((a[i] - x) % 2) == 0){
ll k = ((a[i]-x)/2);
a[i+1] += k;
a[i] -= 2*k;
}
else if(a[i] >= x){
ll k = ((a[i]-x-1)/2);
a[i+1] += k;
a[i] -= 2*k;
}
}
dp.assign(a.size(), vector<ll>(3*x, -1));
return solveBruteforce(x, a);
}| # | Result | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Result | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Result | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Result | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Result | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
