Cod sursa(job #2494581)

Utilizator EricEric Vilcu Eric Data 18 noiembrie 2019 09:46:05
Problema Shop Scor 0
Compilator cpp-64 Status done
Runda ad_hoc Marime 0.6 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("aprindere.in");
ofstream g("aprindere.out");
long long n,S,a[34],u[34],k,pow,Q;
int t[32];
int main()
{
    f>>n>>k>>S;
    for(int i=1;i<=n;++i)
    {
        long long x,y;
        f>>x>>y;
        a[x]+=y;
        t[i]=x;
    }
    for(int i=32;i>=0;--i)
    {
        if(a[i]>0)
        {
            pow=1;
            for(int j=1;j<=i;++j)pow*=k;
            u[i]=min(a[i],S/pow);
            S-=pow*u[i];
            Q+=u[i];
        }
    }
    g<<Q<<'\n';
    for(int i=1;i<=n;++i)g<<u[t[i]]<<' ';
}