Submission #303629

#TimeUsernameProblemLanguageResultExecution timeMemory
303629cgiosyPacking Biscuits (IOI20_biscuits)C++17
0 / 100
1 ms384 KiB
#include "biscuits.h"
#include <bits/stdc++.h>
using namespace std;
using ll=long long;

ll count_tastiness(ll x, vector<ll> A) {
	const int N=A.size();
	vector<ll> D(N);
	for(int i=1; i<N; i++) A[i]=A[i-1]+(A[i]<<i);
	D[0]=(A[0]>=x)+1;
	for(int i=1; i<N; i++) {
		ll v=min(A[i]/x, (ll(1)<<i+1)-1);
		D[i]+=(v&1)+1;
		for(int j=1; j<=i; j++) if(v&1<<j) D[i]+=D[j-1];
	}
	return D[N-1];
}

Compilation message (stderr)

biscuits.cpp: In function 'll count_tastiness(ll, std::vector<long long int>)':
biscuits.cpp:12:29: warning: suggest parentheses around '+' inside '<<' [-Wparentheses]
   12 |   ll v=min(A[i]/x, (ll(1)<<i+1)-1);
      |                            ~^~
#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...