dfs

· PS
https://www.acmicpc.net/problem/21736 21736번: 헌내기는 친구가 필요해 2020년에 입학한 헌내기 도연이가 있다. 도연이는 비대면 수업 때문에 학교에 가지 못해 학교에 아는 친구가 없었다. 드디어 대면 수업을 하게 된 도연이는 어서 캠퍼스 내의 사람들과 친해지고 www.acmicpc.net 풀이 DFS, 혹은 BFS로 풀 수 있겠습니다. 일단 저는 DFS로 먼저 접근해 보았는데요, 정답 코드 (DFS) import sys sys.setrecursionlimit(1000000) input = sys.stdin.readline n, m = map(int, input().split()) graph = [list(input().strip()) for _ in range(n)] ..
· 알고리즘
DFS를 구현할 때, 스택을 사용하는 방법과 재귀함수를 사용하는 방법의 두 가지 방법이 있습니다. 저는 지금까지 항상 재귀함수를 사용해 구현했는데, BOJ에서 DFS문제를 푼 다른 분들의 코드를 보면 스택을 사용해 구현하시기도 하더라구요! 그래서 공부 겸 스택을 사용한 DFS에 대해서도 알아보려 합니다. 본 포스팅은 DFS, 스택, 재귀함수의 개념에 대한 설명은 하지 않으므로 이를 모르신다면 미리 알고 오시길 추천드립니다! 위의 그래프를 DFS로 탐색해보겠습니다. 이 그래프를 2차원 리스트로 표현하면 아래와 같습니다. graph = [ [], [2, 3, 8], [1, 7], [1, 4, 5], [3, 5], [3, 4], [7], [2, 6, 8], [1, 7] ] `graph[n]`은 노드 n에 연결..
· PS
https://www.acmicpc.net/problem/10026 10026번: 적록색약 적록색약은 빨간색과 초록색의 차이를 거의 느끼지 못한다. 따라서, 적록색약인 사람이 보는 그림은 아닌 사람이 보는 그림과는 좀 다를 수 있다. 크기가 N×N인 그리드의 각 칸에 R(빨강), G(초록) www.acmicpc.net 문제 적록색약은 빨간색과 초록색의 차이를 거의 느끼지 못한다. 따라서, 적록색약인 사람이 보는 그림은 아닌 사람이 보는 그림과는 좀 다를 수 있다. 크기가 N×N인 그리드의 각 칸에 R(빨강), G(초록), B(파랑) 중 하나를 색칠한 그림이 있다. 그림은 몇 개의 구역으로 나뉘어져 있는데, 구역은 같은 색으로 이루어져 있다. 또, 같은 색상이 상하좌우로 인접해 있는 경우에 두 글자는 같은..
Alsong
'dfs' 태그의 글 목록