Pagini recente » Cod sursa (job #409910) | Cod sursa (job #461014) | Cod sursa (job #1177779) | Cod sursa (job #1864635) | Cod sursa (job #274252)
Cod sursa(job #274252)
var f,g:text;
n,m,a,b,i,x,p,ps,k:longint;
l,max:byte;
d: array [1..100000,1..100000] of longint;
st,urm,v: array [1..1000000] of longint;
procedure dfs (var l:byte);
begin
st[1]:=p;
urm[p]:=0;
ps:=1;
v[p]:=1;
l:=0;
while ps>=1 do begin
x:=st[ps];
k:=urm[x]+1;
while ((k<=n) and (d[x,k]=0)) or ((d[x,k]=1) and (v[k]=1)) do k:=k+1;
urm[x]:=k;
if k=n+1 then begin
ps:=ps-1;
urm[ps+1]:=0;
end
else begin
v[k]:=1;
ps:=ps+1;
st[ps]:=k;
end;
end;
for i:=1 to n do if st[i]<>0 then l:=l+1;
end;
begin
assign(f,'dfs.in');
reset(f);
assign(g,'dfs.out');
rewrite(g);
read(f,n,m);
for i:=1 to m do begin
read(f,a,b);
d[a,b]:=1;
d[b,a]:=1;
end;
max:=1;
for p:=1 to n do begin
dfs(l);
if l>max then max:=l;
fillchar(v,sizeof(v),0);
fillchar(st,sizeof(st),0);
fillchar(urm,sizeof(urm),0);
end;
write(g,max);
close(f);
close(g);
end.