Pagini recente » Cod sursa (job #2698834) | Cod sursa (job #485054) | Cod sursa (job #2093159) | Cod sursa (job #1846735) | Cod sursa (job #37575)
Cod sursa(job #37575)
var f,g:text;
b,d,x:array[1..50]of longint;
a:array[1..50]of qword;
nr,s,aux:qword;
c,i,j,aux2,z,n:longint;
begin
assign(f,'shop.in');reset(f);
assign(g,'shop.out');rewrite(g);
readln(f,n,c,s);
for i:=1 to n do
begin
readln(f,z,b[i]);
a[i]:=1;
for j:=1 to z do
a[i]:=a[i]*c;
d[i]:=i;
end;
for i:=1 to n-1 do
for j:=i+1 to n do
if a[i]<a[j] then begin
aux:=a[i];
a[i]:=a[j];
a[j]:=aux;
aux2:=b[i];
b[i]:=b[j];
b[j]:=aux2;
aux2:=d[i];
d[i]:=d[j];
d[j]:=aux2;
end;
nr:=0;i:=1;
while s<>0 do
begin
if a[i]*b[i]>s then begin
x[i]:=s div a[i];
s:=s mod a[i];
nr:=nr+x[i];
end
else begin
x[i]:=b[i];
s:=s-a[i]*b[i];
nr:=nr+x[i];
end;
inc(i);
end;
writeln(g,nr);
for i:=1 to n-1 do
for j:=i+1 to n do
if d[i]>d[j] then begin
aux2:=d[i];
d[i]:=d[j];
d[j]:=aux2;
aux2:=x[i];
x[i]:=x[j];
x[j]:=aux2;
end;
for i:=1 to n-1 do
write(g,x[i],' ');
writeln(g,x[n]);
close(f);
close(g);
end.