첫번째 코드
사실 이분 그래프의 정의는 알았지만 문제와 풀이를 아직 잘 이해하지 못했다.
책을 참고해서 코드를 작성하였다...
천천히 뒷 문제들을 풀면서 이해하고 다시 돌아와야 할 문제이다....
import sys
input = sys.stdin.readline
sys.setrecursionlimit(10**6)
n = int(input())
iseven = True
def DFS(x):
global iseven
visited[x] = True
for i in A[x]:
if not visited[i]:
check[i] = (check[x] + 1) % 2
DFS(i)
elif check[x] == check[i]:
iseven = False
for _ in range(n):
v, e = map(int, input().split())
A = [[] for _ in range(v+1)]
visited = [False] * (v+1)
check = [0] * (v+1)
iseven = True
for i in range(e):
start, end = map(int, input().split())
A[start].append(end)
A[end].append(start)
for i in range(1, v+1):
if iseven:
DFS(i)
else:
break
if iseven:
print("YES")
else:
print("NO")
통그아아...
링크
programmers/백준/Gold/1707. 이분 그래프 at main · ornni/programmers
repository for recording Programmers Algorithm problem solving - ornni/programmers
github.com
'코딩 테스트 > do it! 알고리즘 코딩테스트' 카테고리의 다른 글
050 집합의 표현 (0) | 2024.06.25 |
---|---|
049 물통 (0) | 2024.06.25 |
047 효율적인 해킹 (미해결) (0) | 2024.06.20 |
046 특정 거리의 도시 찾기 (0) | 2024.06.18 |
045 Ax+By=C (0) | 2024.06.18 |