Cod sursa(job #38066)

Utilizator Omega91Nicodei Eduard Omega91 Data 25 martie 2007 14:36:17
Problema Shop Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.04 kb
#include <fstream>
#include <iostream>
using namespace std;
ifstream f1("shop.in");
ofstream f2("shop.out");
long long a[40]={0}, baux;
main()
{
    int n,c,cif[60]={0},k,i, aaux, p[40], suma=0;
    bool stop;
    unsigned long long l;
    f1>>n>>c>>l;
    for (i=1; i<=n; i++)
    {
        f1>>aaux>>baux;
        a[aaux]=baux;
        p[i]=aaux; //doar la sfarsit
    }
    k=-1;
    while (l>0)
    {
        k++;
        cif[k]=l%c;
        l/=c;

    }
    //for (i=0; i<=k; i++)
        //cout<<cif[i];
    stop=false;

    while(!stop)
    {
        stop=true;
        for (i=k; i>=0; i--)
        {
            //cout<<a[i]<<endl;
            if (cif[i]>a[i])
            {
                cif[i]-=1;
                cif[i-1]+=c;
                stop=false;
            }
        }
    }
    suma=0;
    for (i=0; i<=k; i++)
        suma+=cif[i];
    f2<<suma<<endl;
    for (i=1; i<=n; i++)
        f2<<cif[p[i]]<<" ";
    f2<<endl;
    //cin>>i;
    f2.close();
    f1.close();
    return 0;
    
}