Cod sursa(job #187020)

Utilizator antoanelaAntoanela Siminiuc antoanela Data 29 aprilie 2008 22:49:04
Problema Shop Scor 60
Compilator fpc Status done
Runda Arhiva de probleme Marime 1.06 kb
program shop;
var f,g:text;
    a,b,v,p:array[0..100]of longint;
    n,c,i,ord,aux,co,x,j:longint;
    l:int64;
begin
assign(f,'shop.in');
assign(g,'shop.out');
reset(f);
rewrite(g);
read(f,n,c,l);
for i:=1 to n do read(f,a[i],b[i]);
for i:=1 to n do p[i]:=i;
repeat
        ord:=0;
        for i:=1 to n-1 do
           if (a[i]<a[i+1])then
             begin
               aux:=a[i];
               a[i]:=a[i+1];
               a[i+1]:=aux;
               aux:=b[i];
               b[i]:=b[i+1];
               b[i+1]:=aux;
               aux:=p[i];
               p[i]:=p[i+1];
               p[i+1]:=aux;
               ord:=1;
             end;
        until ord=0;
for i:=1 to n do
  begin
    x:=1;
    for j:=1 to a[i] do x:=x*c;
    if (l div x<=b[i])then
      begin
        inc(co,l div x);
        v[p[i]]:=l div x;
        l:=l mod x;
      end else
      begin
        inc(co,b[i]);
        l:=l-(x*b[i]);
        v[p[i]]:=b[i];
      end;
  end;
writeln(g,co);
for i:=1 to n do writE(g,v[i],' ');
closE(f);
close(g);
end.