Submission #304362

# Submission time Handle Problem Language Result Execution time Memory
304362 2020-09-21T07:42:02 Z arnold518 Packing Biscuits (IOI20_biscuits) C++14
9 / 100
1000 ms 384 KB
#include "biscuits.h"
#include <bits/stdc++.h>
using namespace std;

typedef long long ll;
typedef pair<int, int> pii;
typedef pair<ll, ll> pll;

ll X, A[100], P;

bool solve(ll y)
{
	ll now=0;
	for(int i=59; i>=0; i--)
	{
		if(y&(1ll<<i)) now+=X;
		now=max(0ll, now-A[i]);
		now*=2;
	}
	return now==0;
}

ll count_tastiness(ll _X, vector<ll> _A)
{
	X=_X; P=0;
	memset(A, 0, sizeof(A));
	for(int i=0; i<_A.size(); i++) A[i]=_A[i];

	for(int i=0; i<60; i++) P+=(1ll<<i)*A[i];

	ll ans=0;
	for(ll i=0; i<=P/X; i++) ans+=solve(i);
	return ans;
}

Compilation message

biscuits.cpp: In function 'll count_tastiness(ll, std::vector<long long int>)':
biscuits.cpp:27:16: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   27 |  for(int i=0; i<_A.size(); i++) A[i]=_A[i];
      |               ~^~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Correct 21 ms 256 KB Output is correct
2 Correct 1 ms 256 KB Output is correct
3 Correct 1 ms 256 KB Output is correct
4 Correct 22 ms 384 KB Output is correct
5 Correct 5 ms 256 KB Output is correct
6 Correct 52 ms 256 KB Output is correct
7 Correct 3 ms 256 KB Output is correct
8 Correct 52 ms 256 KB Output is correct
9 Correct 8 ms 288 KB Output is correct
10 Correct 0 ms 256 KB Output is correct
11 Correct 0 ms 256 KB Output is correct
12 Correct 27 ms 256 KB Output is correct
13 Correct 12 ms 256 KB Output is correct
14 Correct 1 ms 256 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 21 ms 256 KB Output is correct
2 Execution timed out 1096 ms 256 KB Time limit exceeded
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Execution timed out 1044 ms 256 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Execution timed out 1092 ms 384 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 21 ms 256 KB Output is correct
2 Correct 1 ms 256 KB Output is correct
3 Correct 1 ms 256 KB Output is correct
4 Correct 22 ms 384 KB Output is correct
5 Correct 5 ms 256 KB Output is correct
6 Correct 52 ms 256 KB Output is correct
7 Correct 3 ms 256 KB Output is correct
8 Correct 52 ms 256 KB Output is correct
9 Correct 8 ms 288 KB Output is correct
10 Correct 0 ms 256 KB Output is correct
11 Correct 0 ms 256 KB Output is correct
12 Correct 27 ms 256 KB Output is correct
13 Correct 12 ms 256 KB Output is correct
14 Correct 1 ms 256 KB Output is correct
15 Correct 21 ms 256 KB Output is correct
16 Execution timed out 1096 ms 256 KB Time limit exceeded
17 Halted 0 ms 0 KB -