Submission #1240444

#TimeUsernameProblemLanguageResultExecution timeMemory
1240444MuhammadSaramPacking Biscuits (IOI20_biscuits)C++20
0 / 100
1 ms328 KiB
#include "biscuits.h"
#include <bits/stdc++.h>

using namespace std;

#define ll long long

long long count_tastiness(long long x, vector<long long> a) {
	for (int i=0;i+1<a.size();i++)
	{
		int x=(a[i]-1)/2;
		a[i+1]+=x;
		a[i]-=x*2;
	}
	while (a.back()>2)
	{
		int x=(a.back()-1)/2;
		a.back()-=x*2;
		a.push_back(x);
	}
	int m=a.size();
	ll dp[m+1]={},su;
	dp[0]=1,su=1;
	dp[1]=(a[0]>0),su+=dp[1];
	for (int i=2;i<m;i++)
	{
		if (a[i])
			dp[i]=su;
		else if(a[i-1]>1)
			dp[i]=(su-dp[i-1]);
		su+=dp[i];
	}
	return su;
}
#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...