连通图

连通图

Time Limit:1000MS  Memory Limit:65536K
Total Submit:156 Accepted:88

Description

判断一个图是否为一个边通图

Input

n 顶点 (n<=100)

Output

1 表示连通
0 表示不边通

Sample Input

5
1 2
2 3 
5 4
0 0

Sample Output

0

Source

elba


type

  arr=array[0..100,0..100]of longint;
var
  i,j,k,n,m,x,y,s,ss,max:longint;
  a:array[0..100,0..100]of boolean;
  b:array[0..10000]of longint;


procedure bfs(s,dep:longint);
var
  i,j,ss:longint;
begin
  if dep>=n then
    begin
      writeln(1);
      close(input);
      halt;
    end;
  for i:=1 to n do
    begin
      if a[s,i] then
      begin
        b[i]:=b[i]+1;
        ss:=i;
        if b[i]>=1 then
        begin
          a[x,y]:=false;
          a[y,x]:=false;
          bfs(i,dep+1);
          a[x,y]:=true;
          a[y,x]:=true;
          b[i]:=0;
        end else
        begin
          a[x,y]:=false;
          a[y,x]:=false;
          bfs(i,dep);
          a[x,y]:=true;
          a[y,x]:=true;
          b[i]:=0;
          end;
      end;
    end;


end;


begin
  assign(input,'233.in');reset(input);
  readln(n);
  for i:=1 to n do
    for j:=1 to n do
      a[i,j]:=false;
  repeat
    readln(x,y);
    a[x,y]:=true;
    a[y,x]:=true;
  until (x=0) and (y=0);
  bfs(1,0);
  writeln(max);
  close(input);
end.









  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值