Белорусская областная олимпиада 2017
Мое решение на dl.gsu.by
Тур 1 задача 1 (FP 2.4.0)
Мое решение на dl.gsu.by
Тур 1 задача 1 (FP 2.4.0)
program z1; var N,K,i,j:longint; S:int64; A:array[1..2,1..100000] of longint; B:array[1..100000] of longint;
procedure QSort ( first, last: longint);
var L, R, c, X,w: longint;
begin
if first < last then
begin
X:= A[1,(first + last) div 2];
L:= first;
R:= last;
while L <= R do
begin
while A[1,L] < X do
L:= L + 1;
while A[1,R] > X do
R:= R - 1;
if L <= R then
begin
c:= A[1,L];w:=A[2,L];
A[1,L]:= A[1,R];
A[2,L]:= A[2,R];
A[1,R]:= c;
A[2,R]:=w;
L:= L + 1;
R:= R - 1;
end;
end;
QSort(first, R);
QSort(L, last);
end;
end;
begin
//vvod
assign(input,'input.txt');
assign(output,'output.txt');
reset(input);
Read(N,K);
for i:=1 to N do begin read(A[1,i]); A[2,i]:=i end;
for i:=1 to N do read(B[i]);
//sort
QSort(1,N);
// osnov
S:=0;
for j:=1 to k do
begin
i:=A[2,j];
S:=S+(A[1,j]-B[i])
end;
//vivod
rewrite(output);
write(S);
close(input);
close(output);
end.
Комментариев нет:
Отправить комментарий
Примечание. Отправлять комментарии могут только участники этого блога.