Submission #748128

#TimeUsernameProblemLanguageResultExecution timeMemory
748128Rafi22Packing Biscuits (IOI20_biscuits)C++14
Compilation error
0 ms0 KiB
#include <bits/stdc++.h>

using namespace std;

#define endl '\n'
#define st first
#define nd second
#define pb push_back
#define sz(x) (int)(x).size()
#define all(x) (x).begin(), (x).end()
#define ll long long
ll mod=1000000007;
int inf=1000000007;
ll infl=1000000000000000007;

ll P[67];

map<pair<int,ll>,ll>mem;
map<pair<int,ll>,bool>was;

ll f(int i,ll x)
{
    x=min(x,(1LL<<(i+1))-1);
    if(i==0) return x+1;
    if(was[{i,x}]) return mem[{i,x}];
    ll ans=0;
    if(x&(1LL<<i)) ans=f(i-1,P[i-1])+f(i-1,min(P[i],x-(1LL<<i)));
    else ans=f(i-1,min(x,P[i-1]));
    was[{i,x}]=1;
    return mem[{i,x}]=ans;
}

ll count_tastiness(ll x, vector<ll>w)
{
    int k=sz(w);
    P[0]=w[0];
    for(int i=1;i<60;i++)
    {
        P[i]=P[i-1];
        if(i<k) P[i]+=w[i]*(1LL<<i);
    }
    for(int i=0;i<60;i++) P[i]/=x;
    was.clear();
    return f(59,P[59]);
}

int main()
{
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    cout.tie(0);
    int tt;
    cin>>tt;
    while(tt--)
    {
        int n;
        ll x;
        cin>>n>>x;
        vector<ll>a(n);
        for(int i=0;i<n;i++) cin>>a[i];
        cout<<count_tastiness(x,a)<<endl;
    }

    return 0;
}

Compilation message (stderr)

/usr/bin/ld: /tmp/ccm7N54G.o: in function `main':
grader.cpp:(.text.startup+0x0): multiple definition of `main'; /tmp/cceToT5E.o:biscuits.cpp:(.text.startup+0x0): first defined here
collect2: error: ld returned 1 exit status