2579번 - 계단 오르기
접근 자체가 틀린것 같은데 , 전혀 감이 안오네요...
제가 푼 방식은 이렇습니다.
/*
가장 뒤에서 부터 진행.
크게 두가지 경우로 봄.
1. 3개연속이 되는경우와 그렇지 않은경우
1-1. 3개 연속이 되는경우에는
바로 이전까지의 값(dp[i+1])과 전전값과 현재 계단값 더한 값(dp[i+2] + stair[i])를 비교.
비교하여 큰 값을 기준으로 dp를 설정. 만약 dp[i+2]+stair 가 더 크다면 , 가운데놈의 방문 표시를 지운다.
1-1-1 (예외 처리)
둘의 값이 같을 경우 dp[i+1]의 값을 사용한다. continue 처리를 해주었다.
1-2. 3개 연속이 아니라면 단순하게 dp[i+1] + stair[i]를 해준다.
*/
어느부분이 틀린건가요???또한 올바른 접근 방법은 어떻게 해야하는 걸까요?
댓글을 작성하려면 로그인해야 합니다.
dlaqudanr 6년 전
접근 자체가 틀린것 같은데 , 전혀 감이 안오네요...
제가 푼 방식은 이렇습니다.
/*
가장 뒤에서 부터 진행.
크게 두가지 경우로 봄.
1. 3개연속이 되는경우와 그렇지 않은경우
1-1. 3개 연속이 되는경우에는
바로 이전까지의 값(dp[i+1])과 전전값과 현재 계단값 더한 값(dp[i+2] + stair[i])
를 비교.
비교하여 큰 값을 기준으로 dp를 설정. 만약 dp[i+2]+stair 가 더 크다면 , 가운데놈의 방문 표시를 지운다.
1-1-1 (예외 처리)
둘의 값이 같을 경우 dp[i+1]의 값을 사용한다. continue 처리를 해주었다.
1-2. 3개 연속이 아니라면 단순하게 dp[i+1] + stair[i]를 해준다.
*/
어느부분이 틀린건가요???
또한 올바른 접근 방법은 어떻게 해야하는 걸까요?