Pagini recente » Cod sursa (job #2183370) | Cod sursa (job #2482729) | Cod sursa (job #810568) | Cod sursa (job #2716018) | Cod sursa (job #38226)
Cod sursa(job #38226)
type ban=record
a,min:int64;
end;
var v,x:array[1..33]of ban;
s,smin:array[1..33]of int64;
n,c,i,j,nr,nmin:longint;
l,min,t:int64;
aux:ban;
begin
assign(input,'shop.in');reset(input);
assign(output,'shop.out');rewrite(output);
readln(n,c,l);
for i:=1 to n do
read(v[i].a,v[i].min);
for i:=1 to n do
begin
t:=1;
for j:=1 to v[i].a do
t:=t*c;
v[i].a:=t;
end;
x:=v;
for i:=1 to n do
for j:=i+1 to n do
if v[i].a<v[j].a then
begin
aux:=v[i];
v[i]:=v[j];
v[j]:=aux;
end;
for i:=1 to n do
begin
min:=l div v[i].a;
if v[i].min<min then
min:=v[i].min;
l:=l-v[i].a*min;
nmin:=nmin+min;
smin[i]:=min;
end;
writeln(nmin);
for i:=1 to n do
begin
for j:=1 to n do
if (v[i].a=x[j].a)and(v[i].min=x[j].min) then
begin
s[j]:=smin[i];
break;
end;
end;
for i:=1 to n do
write(s[i],' ');
close(input);close(output);
end.