(백준) 18352번: 특정 거리의 도시 찾기 - 파이썬 풀이 (BFS, 그래프)
1. 문제풀러가기 2. 문제 해결 코드 3. 로직 분석 1. 문제풀러가기 https://www.acmicpc.net/problem/18352 18352번: 특정 거리의 도시 찾기 첫째 줄에 도시의 개수 N, 도로의 개수 M, 거리 정보 K, 출발 도시의 번호 X가 주어진다. (2 ≤ N ≤ 300,000, 1 ≤ M ≤ 1,000,000, 1 ≤ K ≤ 300,000, 1 ≤ X ≤ N) 둘째 줄부터 M개의 줄에 걸쳐서 두 개 www.acmicpc.net 문제 요약: - X(시작지점)도시 부터 K만큼 이동해서 갈 수 있는 도시 출력. - 중요포인트 : 오름차순 정렬! 예) N=4, M=4, K=2, X=1일 때 도시는 1~4까지 있음 => N=4 주어진 도로의 개수는 4개 => M=4 최단 거리가 2 이..
2022. 11. 23.
(알고리즘)DFS(Depth-First-Search) 깊이 우선 탐색 - 파이썬
DFS 1. DFS동작 예시 DFS(Depth-First-Search)는 말 그대로 깊은 곳에 있는 노드를 탐색하는 방법이다. DFS는 재귀함수를 사용하여 깊이 있는노드를 탐색한다. *재귀함수는 스택과 유사하다. 집어 넣은 순서대로 1->2->4->8->5->3->6->7 2. DFS코드 예제(python) import graphlib graph=[ [], #노드가 1부터 시작하므로 비움. [2,5,3], #1과 인접한 노드 [1,4,8], #2와 인접한 노드 [1,6,7], #3과 인접한 노드 [2], #4와 인접한 노드 [1,8], #5와 인접한 노드 [3,7], #6과 인접한 노드 [3,6], #7과 인접한 노드 [2,5] #8과 인접한 노드 ] visited = [False]*len(graph) ..
2021. 6. 11.