[JAVA] 백준, 2531번 회전 초밥
https://www.acmicpc.net/problem/2531 코드아래 코드를 보면 주석 처리된 부분이 있다. // 정답result = dp[c] == 0 ? max + 1 : max;// 오답if (dp[c] == 0) { max++;}result = max;오답 처리되는 이유는 아래 입력이 들어왔을 때, max 값에 문제가 생기기 때문이다.아래 예제를 통해 알아보겠다. 입력: 8 30 4 3023442344출력:오답 코드 : 5정답 코드 : 42 3 4 4에 대해서 먼저 처리하게 되면 중복되는 값을 제외하고 max는 3이 된다. 근데 if문에서 true가 되기 때문에 max는 4가 된다. max가 4인 상태에서 슬라이딩 윈도우를 통해 3 4 4 2에 대해서 처리하게 된다. 2 3 4 4에서 ..
Algorithm/백준 - Java
2024. 6. 1. 11:53