Pagini recente » Cod sursa (job #2763357) | Cod sursa (job #660304) | Cod sursa (job #11473) | Cod sursa (job #879109) | Cod sursa (job #67682)
Cod sursa(job #67682)
program merge;
type rec=record
s,d:longint;
end;
var f,g:text;
i,j,n:longint;
a:array[0..100000] of rec;
b:array[0..100000] of qword;
sum, min, t:qword;
begin
assign(f,'branza.in'); reset(f);
assign(g,'branza.out'); rewrite(g);
readln(f,n,sum,t);
for i:=1 to n do read(f,a[i].s,a[i].d);
b[1]:=a[1].s*a[1].d;
for i:=2 to n do begin
min:=a[i].s*a[i].d; j:=i-1;
while (min>(i-j)*sum)and(j>0)and((i-j)<=j*7) do begin
if ((i-j)*sum*a[i].d+a[j].s*a[i].d)<min then min:=(i-j)*sum*a[i].d+a[j].s*a[i].d;
dec(j);
end;
b[i]:=min+b[i-1];
end;
writeln(g,b[n]);
close(g); close(f);
end.