ADS - Quảng cáo

Tác giả: flashmt

Ngôn ngữ: Pascal

const maxn=2100;
var n,sm,m:longint;
    a:array[1..maxn,1..maxn] of byte;
    dau:array[1..maxn] of longint;

procedure re;
var i,x,y:longint;
begin
     fillchar(a,sizeof(a),0);
     readln(n,m);
     for i:=1 to m do
     begin
          readln(x,y);
          a[x,y]:=1;
          a[y,x]:=1;
     end;
end;
procedure duyet(x:longint);
var i:longint;
begin
     for i:=1 to n do
         if (dau[i]=0) and (a[x,i]=1) then
         begin
              dau[i]:=sm;
              duyet(i);
         end;
end;

procedure pr;
var i:longint;
begin
     fillchar(dau,sizeof(dau),0);
     sm:=0;
     for i:=1 to n do
         if dau[i]=0 then
         begin
              inc(sm); dau[i]:=sm;
              duyet(i);
         end;
end;

procedure wr;
begin
     write(m-n+sm);
end;
begin
     re;
     pr;
     wr;
end.

Download