728x90
문제 해석
인접한 사탕이 다른 색이면 서로 위치를 교환한다.
인접한 사탕이 같은 색이면 두 사탕을 먹을 수 있다.
연속으로 최대 먹을 수 있는 사탕의 최대 개수를 출력한다.
알고리즘
사탕을 채워놓은 행렬을 만들고 인접한 색이 다르거나 같거나 모두 교환을 진행하고 인접한 두 사탕을 가로로 골랐으면 가로로, 세로로 골랐으면 세로로 탐색하여 교환 후 최대 개수를 매번 비교하며 갱신한다.
한번 교환 후 이어서 다른 것을 교환하는 것이 아닌 교환 후 다시 원상 복귀를 해야 하는 문제였다.
코드
728x90
'알고리즘 > 일반' 카테고리의 다른 글
백준 17212번: 달나라 토끼를 위한 구매대금 지불 도우미 (JAVA) (0) | 2023.04.14 |
---|---|
백준 14235번: 크리스마스 선물 (JAVA) (3) | 2023.04.13 |
백준 5545번: 최고의 피자 (JAVA) (0) | 2023.04.13 |
백준 17952번: 과제는 끝나지 않아 (JAVA) (0) | 2023.04.13 |
백준 2852번: NBA 농구 (JAVA) (0) | 2023.04.11 |