BFS 2

[BOJ] 18405번: 경쟁적 전염 (파이썬)

https://www.acmicpc.net/problem/18405 18405번: 경쟁적 전염 첫째 줄에 자연수 N, K가 공백을 기준으로 구분되어 주어진다. (1 ≤ N ≤ 200, 1 ≤ K ≤ 1,000) 둘째 줄부터 N개의 줄에 걸쳐서 시험관의 정보가 주어진다. 각 행은 N개의 원소로 구성되며, 해당 위치 www.acmicpc.net 시험관에 존재하는 바이러스를 오름차순으로 목록에 넣고 하나씩 꺼내어 전파 결과를 적용합니다. 바이러스의 종류와 위치 정보, 그리고 시간 정보를 포함하는 배열 virus 을 준비합니다 바이러스의 전파는 번호가 낮은 순으로 이루어지기에 정렬을 수행합니다 virus를 deque로 변환하고 하나씩 꺼내어 4방향으로 전파를 수행합니다 다른 바이러스가 존재하거나 시험관을 벗어나..

알고리즘 2022.04.16

[BOJ] 18352번: 특정 거리의 도시 찾기 (파이썬)

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 출발 도시부터 시작하여 방문 가능한 도시들로 이동하며 필요한 거리를 갱신합니다. 방문하지 않은 도시에 대한 거리는 -1로 초기화합니다 출발 도시까지의 거리는 0으로 초기화합니다 BFS 현재 도시 cur 에서 방문할 수 있는 도시 vertices[cur] 들을 확인합니다 아직 방문하지 않았다면(거리가 -1이라면) "현재 도시까..

알고리즘 2022.04.16