백준 2661 좋은수열 Java
2019. 8. 13.
알고리즘 분류 백트래킹으로 분류되어있는 좋은 수열 문제이다. 내가 헷갈렸던 부분은 수열을 인접한 두 개의 부분 수열을 검사하는 부분이었다. 생각의 폭이 좁아서인지 검사를 앞에서부터 해야 한다고 생각했다. 그래서 방법을 떠올리기가 힘들었다. 하지만 검사할 때 뒤에서부터, 새로 추가된 수부터 검사를 하면 되는 것이었다. 새로 1, 2, 3 중 하나의 수를 추가할 때 앞에 수랑 겹치지 않게 추가하고 뒤에서부터 2개씩, 3개씩.. n/2개씩 검사하면 되는 문제였다. String클래스의 substring메소드를 활용해서 검사했는데 처음엔 무조건 2개씩 검사하므로 k라는 변수에 2를 넣고 substring으로 범위를 설정해서 검사하였고 k를 1씩 늘렸다. 검사는 무조건 길이/2까지 하기 때문에 k가 문자열의 길이/..