Cod sursa(job #2242875)

Utilizator pionierul22aNa LiZa pionierul22 Data 19 septembrie 2018 17:45:09
Problema Shop Scor 60
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.74 kb
#include <fstream>
#include <algorithm>
#include <cmath>
using namespace std;
ifstream fin("shop.in");
ofstream fout("shop.out");
struct moneda
{
    int a,b,ord;
}M[31];
int n,c,l,v[31];

int cond(moneda M1,moneda M2)
{
    return M1.a>M2.a;
}

int main()
{
    fin>>n>>c>>l;
    for(int i=1;i<=n;i++)
        {
            fin>>M[i].a>>M[i].b;
            M[i].ord=i;
        }

    sort(M+1,M+1+n,cond);
    int nr1=0;
    for(int i=1;i<=n;i++)
    {
        int val=pow(c,M[i].a);
        int nr=l/val;

        if(nr>M[i].b)
            nr=M[i].b;
        v[M[i].ord]=nr;
        nr1+=nr;
        l-=nr*val;
    }

    fout<<nr1<<'\n';
    for(int i=1;i<=n;i++)
        fout<<v[i]<<" ";
    return 0;
}