문제 링크입니다: https://www.acmicpc.net/problem/2933
2933번: 미네랄
문제 창영과 상근은 한 동굴을 놓고 소유권을 주장하고 있다. 두 사람은 막대기를 서로에게 던지는 방법을 이용해 누구의 소유인지를 결정하기로 했다. 싸움은 동굴에서 벌어진다. 동굴에는 미네랄이 저장되어 있으며, 던진 막대기가 미네랄을 파괴할 수도 있다. 동굴은 R행 C열로 나타낼 수 있으며, R×C칸으로 이루어져 있다. 각 칸은 비어있거나 미네랄을 포함하고 있으며, 네 방향 중 하나로 인접한 미네랄이 포함된 두 칸은 같은 클러스터이다. 창영은 동굴의 왼쪽에
www.acmicpc.net
해당 문제는 새로 생긴 클러스터가 바닥에 닿을 때까지 클러스터들을 한칸씩 내리는 것이 핵심인 문제였습니다.
새로 생긴 클러스터들을 찾기 위해 DFS 함수를 이용하였고 클러스터 구성원 중 하나의 'x'라도 바닥에 닿아있다면 flag = true를 부여하여 내리는 작업을 하지 않았습니다.
코드가 조금 길지만 주석을 참고하면 쉽게 이해할 수 있을 것이라고 생각합니다.
개발환경:Visual Studio 2017
지적, 조언, 질문 환영입니다! 댓글 남겨주세요~
반응형
'알고리즘 > BOJ' 카테고리의 다른 글
백준 1981번 배열에서 이동 (2) | 2019.10.08 |
---|---|
백준 2957번 이진 탐색 트리 (0) | 2019.10.08 |
백준 2186번 문자판 (7) | 2019.10.03 |
백준 5635번 생일 (2) | 2019.10.02 |
백준 6118번 숨바꼭질 (0) | 2019.09.29 |