본문 바로가기

algorithm/boj7

백준 2638 치즈 1. 문제 링크 https://www.acmicpc.net/problem/2638 2638번: 치즈 첫째 줄에는 모눈종이의 크기를 나타내는 두 개의 정수 N, M (5 ≤ N, M ≤ 100)이 주어진다. 그 다음 N개의 줄에는 모눈종이 위의 격자에 치즈가 있는 부분은 1로 표시되고, 치즈가 없는 부분은 0으로 www.acmicpc.net 2. 풀이 비어있는 곳을 탐색하도록 BFS를 수행하면서 치즈를 만날 때마다 그 위치에 카운트를 1 증가시킨다. 카운트를 증가시킬 때 마다 해당 위치의 누적 카운트를 측정해 2 이상이면 그 위치는 다음 턴에 제거될 위치로 선정한다. 제거될 위치에 있는 치즈를 제거 후 그 위치부터 다시 1번 과정을 반복한다. #include #include using namespace s.. 2021. 10. 2.
백준 1238 파티 1. 문제 링크 https://www.acmicpc.net/problem/1238 1238번: 파티 첫째 줄에 N(1 ≤ N ≤ 1,000), M(1 ≤ M ≤ 10,000), X가 공백으로 구분되어 입력된다. 두 번째 줄부터 M+1번째 줄까지 i번째 도로의 시작점, 끝점, 그리고 이 도로를 지나는데 필요한 소요시간 Ti가 들어 www.acmicpc.net 2. 풀이 N명의 사람(노드) / M개의 경로(단방향) 그래프와 X(노드 번호)가 주어졌을 때, [모든 사람 -> X]의 최단거리 [X -> 모든 사람]의 최단거리 를 구하는 것이 핵심인 문제이다. [X -> 모든 사람]의 최단 거리의 경우 X를 출발점으로 하는 다익스트라 알고리즘을 쉽게 떠올렸다. 하지만 반대의 경우 출발 지점이 모든 사람이기 때문에.. 2021. 10. 2.
백준 1043 거짓말 1. 문제 링크 https://www.acmicpc.net/problem/1043 1043번: 거짓말 지민이는 파티에 가서 이야기 하는 것을 좋아한다. 파티에 갈 때마다, 지민이는 지민이가 가장 좋아하는 이야기를 한다. 지민이는 그 이야기를 말할 때, 있는 그대로 진실로 말하거나 엄청나게 www.acmicpc.net 2. 풀이 문제의 핵심은 진실을 알고 있는 사람이 참석한 파티를 모두 제거하는 것 파티에 대한 참석자 배열과 참석자에 대한 파티 배열 2개를 만든 후 BFS방식을 통해 진실을 알고 있는 사람이 참석한 모든 파티를 제거할 수 있다. 간단한 알고리즘은 아래와 같다. 최초에 진실을 알고있는 사람을 모두 queue에 push qeueue가 비워질 때까지 queue에서 원소 하나 pop(진실을 알고 .. 2021. 10. 2.