Submission #1356985

#TimeUsernameProblemLanguageResultExecution timeMemory
1356985opeleklanosPacking Biscuits (IOI20_biscuits)C++20
12 / 100
3 ms424 KiB
#include <iostream>
#include <vector>
using namespace std;

#define ll long long

ll count_tastiness(ll x, vector<ll> A){
    vector<ll> a(200, 0);
    for(ll i = 0; i<A.size(); i++) a[i] = A[i];
    ll prev0 = -1;
    ll prev2 = -1;
    ll ans = 1;
    vector<ll> dp = {1, 0, 0, 0};
    for(ll i = 0; i<a.size()-1; i++){
        ll c = (a[i]-1)/2;
        a[i+1] += c;
        a[i] -= c * 2;

        vector<ll> pdp = dp;
        dp = {0, 0, 0, 0};
        dp[0] = pdp[0] + pdp[1];

        if(a[i] == 0) dp[1] = pdp[2] + pdp[3];
        if(a[i] == 1){
            dp[1] = pdp[0] + pdp[1];
            dp[2] = pdp[2] + pdp[3];
        }
        if(a[i] == 2){
            dp[1] = dp[2] = dp[0] = pdp[0] + pdp[1];
            dp[3] = pdp[2] + pdp[3];
        }
    }

    return dp[0] + dp[1];
}
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...