제출 #1194362

#제출 시각아이디문제언어결과실행 시간메모리
1194362simona1230Packing Biscuits (IOI20_biscuits)C++20
0 / 100
1092 ms320 KiB
#include "biscuits.h"
#include <bits/stdc++.h>
using namespace std;

int p[64],h[64];
long long count_tastiness(long long x, std::vector<long long> a)
{
    p[0]=1;
    for(int i=1;i<a.size();i++)
        p[i]=p[i-1]*2;
    long long sum=0;
    for(int i=0;i<a.size();i++)
        sum+=a[i]*p[i];

	int ans=0;
	for(int g=0;g<=sum/x;g++)
    {
        for(int i=0;i<a.size();i++)
            h[i]=a[i];
        int maxx=0,num=0;
        while(num<x)
        {
            int curr=g;
            for(int i=a.size()-1;i>=0;i--)
            {
                int need=min(h[i],curr/p[i]);
                h[i]-=need;
                curr-=need*a[i];
            }
            if(curr!=0)break;
            num++;
        }
        if(num==x)ans++;
    }
	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...