Cod sursa(job #2498119)

Utilizator ivddabDabelea Ioana-Viviana ivddab Data 23 noiembrie 2019 15:23:30
Problema Shop Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.69 kb
#include <fstream>
#define NM 100
using namespace std;
ifstream f("shop.in");
ofstream g("shop.out");
unsigned long long n,c,l,max1,i,nr,x,y;
unsigned long long fr[NM],p[NM],C[NM],r[NM];
int main()
{
    f>>n>>c>>l;
    max1=0;
    for(i=1;i<=n;i++) {
        f>>x>>y; fr[x]=y; max1=max(max1,x);
        C[x]=i;
    }
    p[0]=1;
    for(i=1;i<=max1;i++) p[i]=p[i-1]*c;
    for(i=max1;i>=0&&l!=0;i--){
        if(fr[i]!=0){
            if(fr[i]*p[i]<l) { l-=(fr[i]*p[i]); nr+=fr[i]; r[C[i]]=fr[i]; }
              else{
                nr+=(l/p[i]); r[C[i]]=(l/p[i]); l%=p[i];
              }
        }
    }
    g<<nr<<'\n';
    for(i=1;i<=n;i++) g<<r[i]<<' ';
    return 0;
}