var
n,m,i,t,j,c:integer;
h,th:array[1..2000]of integer;
begin
read(n,m);
c:=m;
for i:=1 to n do read(h[i]);
for i:=1 to m do read(th[i]);
for i:=1 to m do
begin
j:=i;
t:=th[i];
while th[j-1]<t do
begin
th[j]:=th[j-1];
j:=j-1;
end;
th[j]:=t;
end;
for i:=1 to n do
for j:=1 to m do
if(h[i]>th[j])and(th[j]<>0)then begin dec(c);break;end;
write(c);
end.
就这个,为什么错了?
p,n,m,i,j,s:longint;
b,a:array[0..3000] of longint;
begin
read(n,m);
for i:=1 to n do readln(a[i]);
for i:=1 to m do begin
readln(p);
b[p]:=b[p]+1;
end;
for i:=1 to n do begin
for j:=a[i]-1 downto 1 do if b[j]<>0 then begin s:=s+1;b[j]:=b[j]-1;
break;
end;
end;
write(m-s);
end.
var
p,n,m,i,j,s:longint;
b,a:array[0..3000] of longint;
begin
read(n,m);
for i:=1 to n do readln(a[i]);
for i:=1 to m do begin
readln(p);
b[p]:=b[p]+1;
end;{桶排序}
for i:=1 to n do begin
for j:=a[i]-1 downto 1 do if b[j]<>0 then begin s:=s+1;b[j]:=b[j]-1;
break;
end;{统计不满足个数}
end;
write(m-s);
end.