Submission #1033527

#TimeUsernameProblemLanguageResultExecution timeMemory
103352712345678Packing Biscuits (IOI20_biscuits)C++17
0 / 100
1076 ms1051248 KiB
#include "biscuits.h"
#include <bits/stdc++.h>

using namespace std;

#define ll long long

long long count_tastiness(long long x, std::vector<long long> a) {
    ll k=a.size(), p[62];
    p[0]=1;
    for (int i=1; i<62; i++) p[i]=p[i-1]*2;
    vector<ll> cnt(62), qs(62), res, tmp;
    for (int i=0; i<a.size(); i++) cnt[i]=a[i];
    for (int i=0; i<62; i++) qs[i]=((i==0)?0:qs[i-1])+cnt[i]*p[i];
    res.push_back(0);
    for (int i=0; i<62; i++)
    {
        tmp.clear();
        if (((double)qs[i])/x<p[i]) break;
        for (auto y:res) if (((double)qs[i])/x>=(y+p[i])) tmp.push_back(y+p[i]);
        for (auto y:tmp) res.push_back(y); 
    }
    return res.size();
}

Compilation message (stderr)

biscuits.cpp: In function 'long long int count_tastiness(long long int, std::vector<long long int>)':
biscuits.cpp:13:20: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   13 |     for (int i=0; i<a.size(); i++) cnt[i]=a[i];
      |                   ~^~~~~~~~~
biscuits.cpp:9:8: warning: unused variable 'k' [-Wunused-variable]
    9 |     ll k=a.size(), p[62];
      |        ^
#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...