Skip to content

Latest commit

 

History

History
55 lines (41 loc) · 1.29 KB

README.md

File metadata and controls

55 lines (41 loc) · 1.29 KB

3991 한번 쏘면 멈출 수 없어

랭크 상태
Silver IV, 3991 한번 쏘면 멈출 수 없어 성공

문제 분석

최대한 높은 점수를 얻을 수 있게 구슬을 게임판에 배치해야 합니다.

풀이

모든 게임판을 위에서부터 제거하는 것만으로 최고점을 얻을 수 있게 만든다고 합시다. 이를 통해 중력에 대해 생각하지 않을 수 있습니다.

그리고 점수는 제곱으로 주기 때문에, 같은 색 구슬이라면 떨어진 것보다 붙어있는 것이 더 큰 점수를 주는 것이 자명합니다.

그렇다면, 위에서부터 같은 색 구슬을 쌓아나가면 되지 않을까요? 이 때, 주의해야할 부분이 있습니다. 만약 arr[0][j], arr[1][j], ⋯으로 채워나간다면 다음과 같이 게임판이 만들어질 수 있을 것입니다.

11112
22233
33444
44444

따라서 줄 번호가 홀수거나 짝수일 때만 뒤집는 로직을 추가해주면 이런 식으로 게임판이 만들어집니다.

11112
33222
33444
44444