Submission #605387

#TimeUsernameProblemLanguageResultExecution timeMemory
605387HamletPetrosyan비스킷 담기 (IOI20_biscuits)C++17
0 / 100
3 ms596 KiB
#include "biscuits.h"
#include <map>
using namespace std;

#define ll long long
#define add push_back
#define len(a) ((int)(a).size())

map<int, int> dp[65];

long long count_tastiness(long long x, vector<long long> a) {
	dp[0][0] = 1;
	for(int i = 0; i <= len(a) + 5; i++){
		for(auto [key, value] : dp[i]){
			dp[i + 1][((key + (i >= len(a) ? 0 : a[i])) / 2)] += value;
			if((i >= len(a) ? 0 : a[i]) + key >= x) dp[i + 1][(key + a[i] - x) / 2] += value;
		}
	}
	ll ret = 0;
	for(auto [key, value] : dp[x + 6]){
		ret += value;
	}
	return ret;
}

#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...