제가 잘 이해를 못했을 수도 있는데요..
길이를 저장하는게 len이고 값을 저장하는게 arr이면 두수가 직접적으로 비교될 일이 있나요?
저는 둘을 따로 처리하였습니다. arr은 비교만하고 len은 길이만 체크하도록 하였지요.
간단히 만들어본
10
1 6 8 3 4 10 1 2 3 4
다음과 같은 입력이들어올때 4가 되어야 하지만 작성자님의 코드로는 5가 나옵니다.
11053번 - 가장 긴 증가하는 부분 수열
len 이라는 배열에 저장된 값이 len[3]이라 하면 입력받은 arr까지의 길이가 3인 부분수열중 끝의 값이 가장 작은 arr값을 저장해놨다고 생각했는데... 표현이 조금 어려운데...
10 30 60 20 30 40
이면 10을 입력받았을때 len[1] = 10
30 -> len[1] = 10, len[2] = 30
60 -> len[1] = 10, len[2] = 30, len[3] =60
20 -> len[1] = 10, len[2] = 20. len[3] = 60
30 -> len[1] = 10, len[2] = 20. len[3] = 30
40 -> len[1] = 10, len[2] = 20. len[3] = 30, len[4] = 40
이런식으로 해서 총 len 의 길이 4가 최대 길이라고 생각했는데 일단 예외가 있으니 잘못생각했겟죠..? 다시 생각해보겠습니다 ..ㅎㅎ 감사합니다
댓글을 작성하려면 로그인해야 합니다.
pyoneer 6년 전
DP로 푼거같은데...방식이 잘못됬나요?