[Java] 백준 12100 2048(Easy) / G1
·
백준
2048을 구현하여 시뮬레이션 하는 문제이다.총 5번을 이동하여 만들 수 있는 가장 높은 수를 찾으면 된다.문제 해결 전략사실 엄청난 수학적 알고리즘을 요하는 문제는 아니다.얼마나 빠른 시간 내에 정교하게 2048의 움직임을 만들어내고 dfs를 통하여 가장 높은 수를 찾는 문제이다.하지만, 구현이 쉽냐고 하면 절대 아니다.그래서 생각해본 구현 전략은 다음과 같다.2048 메커니즘 구현dfs를 통한 풀이2048 구현2048은 다음과 같이 간단한 규칙을 갖는다움직이고자 하는 방향에 자신과 같은 수를 갖는 타일이 있으면 두 타일이 합쳐지고, 타일은 합쳐지는 두수의 합으로 변한다.그래서 이동하고자 하는 방향에 따라, 각 행과 열의 방향에 맞는 로직을 설정하였다. 예를 들어 위의 그림 처럼, 위 → 오른쪽 이렇게..