Cod sursa(job #2087302)

Utilizator georgitTreista Georgiana georgit Data 13 decembrie 2017 12:26:02
Problema Shop Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.86 kb
#include <fstream>
#include <algorithm>

using namespace std;
pair<int, pair<int,int> > a[50];
long long  n,c,l,sum,pow,nr[50],j,i;
int main()
{
    ifstream f("shop.in");
    ofstream g("shop.out");
    f>>n>>c>>l;
    for(i=1; i<=n; i++)
    {
        f>>a[i].first>>a[i].second.first;
        a[i].second.second=i;
    }
    sort(a+1,a+n+1);
    for(i=n; i>=1; i--)
    {
        pow=1;
        for(j=1; j<=a[i].first; j++)
            pow*=c;
        if(l/pow<=a[i].second.first)
        {
            nr[a[i].second.second]=l/pow;
            sum+=l/pow;
            l%=pow;
        }
        else
        {
            nr[a[i].second.second]=a[i].second.first;
            sum+=a[i].second.first;
            l=l-a[i].second.first*pow;
        }
    }
    g<<sum<<"\n";
    for(i=1; i<=n; i++)
        g<<nr[i]<<" ";
    return 0;
}