永发信息网

pascal 田忌赛马问题

答案:1  悬赏:80  手机版
解决时间 2021-12-02 23:43
  • 提问者网友:兔牙战士
  • 2021-12-02 13:28
pascal 田忌赛马问题
最佳答案
  • 五星知识达人网友:笑迎怀羞
  • 2021-12-02 13:57
type
arr=array[1..5000] of integer;
var
a:array[1..2] of arr;
i,j,n,p,l,r,k:integer;
procedure qsort(var a:arr;l,r:integer);
var
i,j,x,y:integer;
begin
i:=l; j:=r; x:=a[(l+r) div 2];
repeat
while a[i] while a[j]>x do dec(j);
if i<=j
then begin
y:=a[i]; a[i]:=a[j]; a[j]:=y;
inc(i);
dec(j);
end;
until i>j;
if i if l end;
procedure find;
var
ii,iii:integer;
begin
while (p>=1)and(a[1][p]>=a[2][i]) do
p:=p-1;
if a[1][p]=a[2][i] then
for ii:=p-1 downto 1 do
if a[2][i]>a[1][ii] then begin
for iii:=ii to p do a[1][ii]:=a[1][ii+1]; p:=p-1; end;
end;
begin
readln(n);
p:=n;
for i:=1 to 2 do
begin
for j:=1 to n do
read(a[i][j]);
readln;
end;
qsort(a[1],1,n);
qsort(a[2],1,n);
for i:=n downto 1 do
begin
find;
if p>0 then k:=k+1
else break;
p:=p-1;
end;
writeln(k*2-n);
end.
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯