[경로] 첫째날의 leetcode 흰색 브러시 제목

고전적인 동적 프로그래밍 항목 제목 - 통과하지 않는 행에 서너 번 제출 한 계단 질문, 그것은 수업을 기록 점프.

[점프] 단계

당신이 계단을 오르고있다 가정하자. N은 지붕에 도착해야하는 주문.

때마다 당신은 하나 또는 두 단계를 올라갈 수 있습니다. 그것의 지붕에 얼마나 많은 다른 방법을 오를 수 있는가?

참고 : 감안할 때 n은 양의 정수입니다.

출처 : 버튼 (LeetCode) 체재
은 https : 링크 //leetcode-cn.com/problems/climbing-stairs
모든 네트워크에서 공제 저작권. 상업 재판은 승인 된 공식, 비상업적 무단 전재 소스를 표시하시기 바랍니다 문의하시기 바랍니다.

코드의 문제를 제출 :

급 솔루션 : 
    DEF climbStairs (자기, N : INT) -> INT : 
        DP = [I I 내지 (N + 1)에 대한] 
        
        I = 2 
        I> (2) 내가 N <가하면서 : 
            DP [I] DP가 = [I -1] + DP [I-2]를 
        
        복귀 DP [N]

 처음 두 요소 [1] = 1 DP DP [2] = 2

따라서 DP를 초기화 [I] = 1

 

세 가지 문제가 있습니다 :

1. I> 2 <N 전 상태 :

코드가 실행될 수는 없지만 3 재귀 시작하면서 난 1로 초기화

2. 내부 코드는 단순히 반복되지 않지만 본체 동안 화학식 I을 갱신하지 않고 각 코드 실행 된 I + = 1을 부여하면

루프 종단 상태 인 동안 3 : 나 N <

단 DP [I-1]을 구하는 것,

추천

출처www.cnblogs.com/ACStrive/p/11440014.html