讨论 / 奇怪,为什么错了
hncsyjc 2013-05-01 21:38:00
点我顶贴 收藏 删除
var

n,m,i,j,y,t,ans:longint;

p:array [0..1000] of longint;

v:array [0..1000] of boolean;

a:array [0..1000,0..1000] of boolean;

function find(x:longint):boolean;

var

i:longint;

begin

for i:=1 to n do

if (not a[x,i])and(not v[i]) then

begin

v[i]:=true;

if (p[i]=0)or(find(p[i])) then

begin

p[i]:=x;

exit(true);

end;

end;

exit(false);

end;

begin

readln(n);

for i:=1 to n do

begin

read(t);

for j:=1 to t do

begin

read(y);

a[i,y]:=true;

end;

end;

ans:=0;

for i:=1 to n do

begin

fillchar(v,sizeof(v),false);

if find(i) then inc(ans);

end;

writeln(ans);

end.

查看更多回复
提交回复