BOJ 11724接続要素の数
6190 ワード
https://www.acmicpc.net/problem/11724
3秒、215 MBメモリ
input : N M (1 ≤ N ≤ 1,000, 0 ≤ M ≤ N×(N-1)/2) uv(1≦u,v≦N,u≠v)のような幹線は1回 しかかかりません
output :接続要素の個数を出力します. 方向図なし?
双方向図と同じようです.
アクセスリストでFalseがあるかどうかを区別するだけです.
またgraphの保存もゼロから始まるので、for文でBFSを返す場合(1,n+1)回.
3秒、215 MBメモリ
input :
output :
双方向図と同じようです.
アクセスリストでFalseがあるかどうかを区別するだけです.
またgraphの保存もゼロから始まるので、for文でBFSを返す場合(1,n+1)回.
import sys
from _collections import deque
n, m= map(int, sys.stdin.readline().split())
graph = [[] for i in range(n + 1)]
for i in range(m):
a, b = map(int, sys.stdin.readline().split())
graph[a].append(b)
graph[b].append(a)
def BFS(start):
q = deque([start])
visit[start] = True
while q:
now = q.popleft()
for i in graph[now]:
if not visit[i]:
q.append(i)
visit[i] = True
return cnt
visit = [False] * (n + 1)
visit[0] = True
cnt = 0
for i in range(1, n + 1):
if not visit[i]:
BFS(i)
cnt += 1
print(cnt)
Reference
この問題について(BOJ 11724接続要素の数), 我々は、より多くの情報をここで見つけました https://velog.io/@jsin2475/BOJ-11724-연결-요소의-개수テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol