[Python] 백준 11559 - Puyo Puyo [Gold4]
·
Baekjoon
뿌요뿌요라는 게임을 들어보았을지 모르겠지만, 뿌요뿌요는 그림으로 봐도 알 수 있듯이 일본의 SEGA사에서 만든 게임이고 테트리스 처럼 여러 색깔과 모양의 블럭들이 내려와서 바닥이나 제일 위에 있는 블럭과 맞닿았을 때 그 상태에서 상하좌우로 4개의 같은 색깔의 모양이 위치하게 되면 그 블럭들이 터지면서 점수가 오르는 게임이다. 블럭이 터지게 되면 위에 있는 블럭들이 아래의 빈 공간을 메꾸기 위해 내려오게 되고 그 과정에서 새롭게 4개의 블럭이 생기면 연쇄적으로 터질 수 있다.따라서 이 문제에서도 이 게임의 방식과 동일하게 구현을 하면 된다.출처https://www.acmicpc.net/problem/11559풀이BFS를 이용하는데, 블럭이 모여서 터지게 되면 중력의 영향을 받아서 터진 블럭 위에 있는 블럭..
[Python] 백준 2573 - 빙산 [Gold4]
·
Baekjoon
출처https://www.acmicpc.net/problem/2573풀이 전략[백준 2636 - 치즈] https://www.acmicpc.net/problem/26362024.09.10 - [Baekjoon] - [C++] 백준 2636 - 치즈 [Gold4] [C++] 백준 2636 - 치즈 [Gold4]출처https://www.acmicpc.net/problem/2636풀이 전략먼저 문제 해석을 해보면, 1로 입력 받은 치즈가 시간이 지날 수록 녹아 내리는데, 녹아 내리는 부분을 보면 공기(0)과 맞닿아 있는 부분이라는 것을 알phj6724.tistory.com이 문제와 상당히 유사한 방식으로 접근을 해야 한다.다만 다른 점은, 이 문제에서는 빙산이 둘로 쪼개지는 순간의 시간을 출력해야 하기 때문에..
[C++] 백준 2636 - 치즈 [Gold4]
·
Baekjoon
출처https://www.acmicpc.net/problem/2636풀이 전략먼저 문제 해석을 해보면, 1로 입력 받은 치즈가 시간이 지날 수록 녹아 내리는데, 녹아 내리는 부분을 보면 공기(0)과 맞닿아 있는 부분이라는 것을 알 수 있다. 그렇기 때문에 먼저 BFS로 0인 부분을 탐색해서 방문처리를 한 다음, 4방향 탐색을 이용하여 0 다음 노드가 1인 부분을 찾아서 그 부분을 cheese라고 처리를 한 뒤 0으로 바꿔서 그 다음 탐색에서는 그 부분이 공기라고 인식할 수 있도록 바꾸는 전략을 이용하였다.풀이소스 코드/*# Question: BJ 2636 (https://www.acmicpc.net/problem/2636)# Rank : Gold4# Algorithm : Graph, BFS, Simula..