Submission #1320069

#TimeUsernameProblemLanguageResultExecution timeMemory
1320069nicolo_010Packing Biscuits (IOI20_biscuits)C++20
12 / 100
1 ms332 KiB
#include <bits/stdc++.h>
#include "biscuits.h"
using namespace std;
using ll = long long;
using pii = pair<int, int>;
#define f first
#define s second

ll count_tastiness(ll x, vector<ll> a) {
	while (a.size()<61) {
	 a.push_back(0);
	}
	for (int i=0; i<60; i++) {
		if (a[i]>2) {
			a[i+1] += ((a[i]-1)/2);
			a[i] = (a[i]%2==0 ? 2 : 1);
		}
	}
	ll ans=1;
	ll cur=0;
	for (int i=60; i>=0; i--) {
		if (a[i] == 0) {
			ans *= (cur+1);
			cur=0;
		}
		else {
			cur = 2*cur + a[i];
		}
	}
	ans *= (cur+1);
	return ans;
}
#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...