Cod sursa(job #2415400)

Utilizator usureluflorianUsurelu Florian-Robert usureluflorian Data 25 aprilie 2019 22:22:58
Problema Shop Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.77 kb
#include <bits/stdc++.h>
using namespace std;
ifstream f ("shop.in");
ofstream g ("shop.out");
typedef long long ll;
int n,k,sol[33],usuu;
ll c,s;
struct usu
{
    ll p,nr;
    int id;
}v[33];
bool cmp(usu t1,usu t2)
{
    return t1.p>t2.p;
}
int main()
{
    ios::sync_with_stdio(false);
    f>>n>>c>>s;
    for(int i=1;i<=n;++i)
    {
        f>>v[i].p>>v[i].nr;
        v[i].p=pow(c,v[i].p);
        v[i].id=i;
    }
    sort(v+1,v+n+1,cmp);
    k=1;
    while(k<=n)
    {
        while(v[k].p<=s&&v[k].nr)
        {
            s-=v[k].p;
            --v[k].nr;
            sol[v[k].id]++;
            ++usuu;
        }
        if(s) ++k;
        else break;
    }
    g<<usuu<<'\n';
    for(int i=1;i<=n;++i) g<<sol[i]<<' ';
    return 0;
}