반응형
해쉬로 하던 습관을 고치고 남들이 하는거 처럼 하니까 코드가 훨씬 깔끔해보이고 기분이 좋다!
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
node_num, line_num, start_num = map(int,input().split())
map1 = [[False for _ in range(node_num+1)] for _ in range(node_num+1)]
for i in range(line_num):
a,b = map(int,input().split())
map1[a][b] = True
map1[b][a] = True
def bfs(i):
if visited_bfs[i] == False:
print(i, end=' ')
visited_bfs[i] = True
test = [i]
while len(test)!=0:
now = test[0]
for k in range(1,len(map1[now])):
if map1[now][k] == True and visited_bfs[k] == False:
visited_bfs[k] = True
print(k, end=' ')
test.append(k)
test.pop(0)
def dfs(i):
if visited_dfs[i] == False:
print(i, end=' ')
visited_dfs[i] = True
for k in range(1,len(map1[i])):
if map1[i][k] == True and visited_dfs[k] == False:
visited_dfs[k] = True
print(k, end=' ')
dfs(k)
visited_dfs = [False for _ in range(node_num+1)]
visited_bfs = [False for _ in range(node_num+1)]
dfs(start_num)
print()
bfs(start_num)
|
cs |
Be positive!
Be rich!
Live your life!
반응형
'Programming' 카테고리의 다른 글
백준_1012_유기농 배추_dfs_bfs_파이썬 (0) | 2023.08.05 |
---|---|
백준_2667_단지번호 붙이기_dfs_bfs_파이썬 (0) | 2023.08.04 |
강화학습_3_0802 (0) | 2023.08.02 |
백준_2559_수열_파이썬 (0) | 2023.08.01 |
현대_Softeer_level2_전광판_파이썬 (0) | 2023.08.01 |