https://www.acmicpc.net/problem/1707
1707๋ฒ: ์ด๋ถ ๊ทธ๋ํ
์ ๋ ฅ์ ์ฌ๋ฌ ๊ฐ์ ํ ์คํธ ์ผ์ด์ค๋ก ๊ตฌ์ฑ๋์ด ์๋๋ฐ, ์ฒซ์งธ ์ค์ ํ ์คํธ ์ผ์ด์ค์ ๊ฐ์ K๊ฐ ์ฃผ์ด์ง๋ค. ๊ฐ ํ ์คํธ ์ผ์ด์ค์ ์ฒซ์งธ ์ค์๋ ๊ทธ๋ํ์ ์ ์ ์ ๊ฐ์ V์ ๊ฐ์ ์ ๊ฐ์ E๊ฐ ๋น ์นธ์ ์ฌ์ด์
www.acmicpc.net
๋ ์์ฃผ์์ฃผ์์ฃผ์์ฃผ ํ๋๊ฒ ํ ๋ฌธ์ ๋ค
๋ง๋ ๊ฑฐ ๊ฐ์๋ฐ ์๊พธ ํ๋ ค์ ์ด์ฌํ ๋ฐ๋ก ์ฐพ๊ณ ๋ค๋ ๋ค
์์ ์ ๋ ฅ1 |
2 3 2 1 3 2 3 4 4 1 2 2 3 3 4 4 2 |
์์ ์ถ๋ ฅ1 |
YES NO |
์์ ์ ๋ ฅ2 |
11 3 1 2 3 3 2 1 3 2 3 4 4 1 2 2 3 3 4 4 2 3 2 2 1 3 2 4 4 2 1 3 2 4 3 4 1 5 2 1 5 1 2 5 2 1 2 2 5 4 3 1 2 4 3 2 3 4 4 2 3 1 4 3 4 1 2 3 3 1 2 2 3 3 1 2 1 1 2 |
์์ ์ถ๋ ฅ2 |
YES YES NO YES YES YES YES YES YES NO YES |
์์ ์ ๋ ฅ3 |
1 4 3 1 4 2 3 3 4 |
์์ ์ถ๋ ฅ3 |
YES |
์์ ์ ๋ ฅ4 |
1 5 4 1 2 3 4 3 5 4 5 |
์์ ์ถ๋ ฅ4 |
NO |
from collections import deque
k = int(input())
res = [[] for _ in range(k)]
def bfs(x):
queue = deque()
queue.append(x)
flag = 0
visited[x] = [1, flag]
while queue:
q = queue.popleft()
flag = 1 - visited[q][1]
for i in graph[q]:
if visited[i][0] == 0:
queue.append(i)
visited[i] = [1, flag]
for j in graph[i]:
if visited[i][1] == visited[j][1]:
return False
return True
for i in range(k):
v, e = map(int, input().split())
graph = [[] for _ in range(v+1)]
visited = [[0, 20000] for _ in range(v + 1)]
res[i] = "YES"
for j in range(e):
data = input().split()
graph[int(data[0])].append(int(data[1]))
graph[int(data[1])].append(int(data[0]))
for l in range(1, v+1):
if visited[l][0] == 0:
if not bfs(l):
res[i] = "NO"
break
for i in range(k):
print(res[i])

์ผ๋จ ๋ด๊ฐ ๊ฐ๊ณผํ๋ ์ ์ ๊ทธ๋ํ ์ ์ฒด๊ฐ ์ฐ๊ฒฐ๋์ด ์์ง ์์ ๊ฒ๋ ์๊ธฐ ๋๋ฌธ์
bfs๋ฅผ ๋๋ฆด ๋ ๋จ์ด์ ธ ์๋ ๊ทธ๋ํ๋ค์ ๋ชจ๋ ๋๋ ค์ค์ผ ํ๋ค
์ง์ง ๋๋ฌด ํ๋ค์๋ค,,,,,,,, ๋ ๊ฑฐ ๊ฐ์๋ฐ?! ํ๋ฉด ์๊พธ ํ๋ฆฐ ๋ฐ๋ก๊ฐ ๋์ดใ ใ ใ ใ ใ ใ
์ฝ๋๊ฐ ๋๋ฌด ๋นํจ์จ์ ์ธ ๊ฑฐ ๊ฐ์์ ์ข ๊ณ ์ณ์ ํ์ด์ฌ3์ผ๋ก ๋ค์ ๋๋ ค๋ณด๋ ค๊ณ ํ๋๋ฐ
์ผ๋จ ์ง๊ธ์ ๊ธฐ๋นจ๋ ค์ ๋์ด์ ์ณ๋ค๋ณด๊ณ ์ถ์ง ์์ผ๋ ๋ค์์ ํด์ผ๊ฒ ๋ค

'๐ค > ๋ฐฑ์ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๋ฐฑ์ค 10816: ์ซ์ ์นด๋ 2 (Python) (0) | 2022.02.10 |
---|---|
๋ฐฑ์ค 1920: ์ ์ฐพ๊ธฐ (Python) (0) | 2022.02.10 |
๋ฐฑ์ค 7564: ๋์ดํธ์ ์ด๋ (Python) (0) | 2022.02.03 |
๋ฐฑ์ค 2606: ๋ฒฝ ๋ถ์๊ณ ์ด๋ํ๊ธฐ (Python) (0) | 2022.02.03 |
๋ฐฑ์ค 1697: ์จ๋ฐ๊ผญ์ง (Python) (2) | 2022.02.02 |