12100번 - 2048 (Easy)
안녕하세요.
알고리즘은 간단한 BFS로 풀었습니다.
상/우/하/좌 순서로 돌면서 움직임이 있으면 cnt를 1 증가시키고 큐에 넣는 방식입니다.
cnt가 5이면 max 값 확인 후 필요하다면 갱신합니다.
100%에서 틀리는데 반례를 모르겠네요..
해결했습니다. 문제의 출력은 최대 5번을 움직였을 때, 최대 횟수 입니다.
저는 cnt==5일 때만 max를 갱신해서 틀렸었네요
감사합니다 덕분에 같은 오류를 짧은 시간에 파악할 수 있었습니다 문제를 정확히 읽는 것이 중요하군요
안녕하세요 저도 반례를 찾고 있는데요. 만약 어떤 예시에서 3번을 움직인 상황에서 최대값이 나왔다면 5번 움직여도 같은 값을 낼거라고 생각하는데요. . 제 논리에 틀린 점이 뭘까요..
@gm27376 아래와 같은 반례에서 0번을 움직였을 때는 128이 최댓값이지만 5번을 움직이는 건 아예 불가능합니다. 저도 100%에서 틀려서 당황했는데 저걸 넣으니까 0이 나오더라고요...
댓글을 작성하려면 로그인해야 합니다.
ikth6001 4년 전 1
안녕하세요.
알고리즘은 간단한 BFS로 풀었습니다.
상/우/하/좌 순서로 돌면서 움직임이 있으면 cnt를 1 증가시키고 큐에 넣는 방식입니다.
cnt가 5이면 max 값 확인 후 필요하다면 갱신합니다.
100%에서 틀리는데 반례를 모르겠네요..