제출 #304421

#제출 시각아이디문제언어결과실행 시간메모리
304421arnold518비스킷 담기 (IOI20_biscuits)C++14
12 / 100
2 ms384 KiB
#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 now=0, val=0, ans=1; int pos=0;
	vector<ll> V;
	for(int i=0; i<60; i++)
	{
		if(now==0)
		{
			ans*=val+1;
			val=0;
			pos=i;
		}
		if(P&(1ll<<i)) val|=(1ll<<(i-pos));
		now+=A[i];
		now/=2;
	}
	ans*=val+1;

	return ans;
}

컴파일 시 표준 에러 (stderr) 메시지

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