우선순위 큐

https://www.acmicpc.net/problem/1261 1261번: 알고스팟 첫째 줄에 미로의 크기를 나타내는 가로 크기 M, 세로 크기 N (1 ≤ N, M ≤ 100)이 주어진다. 다음 N개의 줄에는 미로의 상태를 나타내는 숫자 0과 1이 주어진다. 0은 빈 방을 의미하고, 1은 벽을 의미 www.acmicpc.net 우선순위 큐를 이용한 BFS 벽을 최소한으로 부숴야 하기 때문에 BFS를 선택했다. 단, 그냥 큐를 사용해서 풀 경우에는 움직인 거리 기준으로 큐에 들어가기 때문에, 우선순위 큐를 사용하여 벽을 부순 횟수를 기준으로 정렬되도록 했다. 처음에는 방문 체크 배열 v를 int 배열로 만들어 어떤 위치에 도달했을 때, 그 때까지 부순 벽의 개수를 저장하려 했는데, 어차피 벽을 부순 ..
https://www.acmicpc.net/problem/1715 1715번: 카드 정렬하기 정렬된 두 묶음의 숫자 카드가 있다고 하자. 각 묶음의 카드의 수를 A, B라 하면 보통 두 묶음을 합쳐서 하나로 만드는 데에는 A+B 번의 비교를 해야 한다. 이를테면, 20장의 숫자 카드 묶음과 30장 www.acmicpc.net PriorityQueue 우선순위 큐 요즘 우선순위 큐 쓰는 문제를 많이 푸는 기분이다.... 이 문제는 어떤 두 개의 카드 뭉치를 선택할지가 매번 독립적이다. 방금 섞어둔 카드도 다른 카드들과 같이 두고 다음 번 섞을 카드를 다시 고른다. 당연히 가장 적은 횟수로 섞기 위해서는 가장 얇은 카드뭉치를 선택해서 섞어야 한다. 왜냐하면 카드 섞는 횟수는 계속 누적되므로, 두꺼운 카드뭉치..
ahue
'우선순위 큐' 태그의 글 목록