求乙個圖的連通分量(應為最大連通分量)
n頂點數(<=100)
邊連通分量(同上)
863
1225
5441
8700
4
對於每個點,判斷是否被標記過,如果沒有,就從該點向外搜尋並標記,並對大小取最大值即可
本題寫了五種特別像的方法,請欣賞
#include
#include
using
namespace std;
int n,x,y,tot=
0,t[
110]
,k[110
],mx=0;
bool a[
110]
[110];
//鄰接矩陣
void
dfs(
int d)
intmain()
for(
int i=
1;i<=n;i++
)printf
("%d"
,mx)
;return0;
}//0ms
#include
#include
using
namespace std;
struct f
a[10010];
int n,x,y,to=
0,tot=
0,t[
110]
,k[110
],head[
110]
,mx=0;
void
add(
int xx,
int yy)
void
dfs(
int d)
intmain()
for(
int i=
1;i<=n;i++
)printf
("%d"
,mx)
;return0;
}//15ms
#include
#include
using
namespace std;
int n,x,y,head,tail,stat[
110]
,mx=0;
bool a[
110]
[110
],t[
110]
;void
bfs(
int d)
return;}
intmain()
for(
int i=
1;i<=n;i++
)printf
("%d"
,mx)
;return0;
}//15ms
#include
#include
using
namespace std;
struct f
a[10010];
int n,x,y,to=
0,t[
110]
,k,head[
110]
,mx=
0,l,he,ta,q[
110]
;void
add(
int xx,
int yy)
void
bfs(
int d)
return;}
intmain()
for(
int i=
1;i<=n;i++
)printf
("%d"
,mx)
;return0;
}//0ms
#include
#include
#include
using
namespace std;
struct f
a[10010];
int n,x,y,to=
0,t[
110]
,k,head[
110]
,mx=
0,l;
queue <
int> c;
void
add(
int xx,
int yy)
void
bfs(
int d)
return;}
intmain()
for(
int i=
1;i<=n;i++
)printf
("%d"
,mx)
;return0;
}//0ms
ssl1759 求連通分量
求連通分量 time limit 1000ms memory limit 65536k total submit 240 accepted 135 description 求乙個圖的連通分量 input n 頂點數 100 邊 output 連通分量 sample input 5 1 23 4 2 ...
1759 求連通分量
求連通分量 time limit 1000ms memory limit 65536k total submit 243 accepted 136 description 求乙個圖的連通分量 input n 頂點數 100 邊 output 連通分量 sample input 5 1 23 4 2 ...
SSL1759 連通分量 五種方法
求乙個圖的連通分量 input n 頂點數 100 連線的邊 output 連通分量 sample input 86 3 1 22 5 5 44 1 8 70 0 sample output1.dfs 鄰接矩陣 2.dfs 鄰接表 3.bfs 鄰接矩陣 4.bfs 鄰接表 5.bfs 鄰接表 stl...