lintcode111 계단 오르기 문제(동적 기획 easy)

  :        ,  n        。             ,                ?
    :
public class Solution {
    /**
     * @param n: An integer
     * @return: An integer
     */
    public int climbStairs(int n) {
        int last=1,lastlast=1,now=0;
        if(n==0||n==1){
            return 1;
        }else{
            for(int i=2;i<=n;i++){
                now=last+lastlast;
                lastlast=last;
                last=now;
            }
            return now;
        }
    }
}
  :1.                                  
                     
     2.                                  
                       
     3.     now=last+lastlast;
                lastlast=last;
                last=now;
        ,        ,       ,  now           
                      lastlast=last;          
  ,                   ,                  
 (           )



public class Solution {
    /**
     * @param n: An integer
     * @return: An integer
     */
    public int climbStairs(int n) {
        int[] arr=new int[n];
        if(n==0||n==1){
            return 1;
        }
        arr[0]=1;arr[1]=2;
        for(int i=2;i1]+arr[i-2];
        }
        return arr[n-1];
    }
}
                      ,**                     **
              if(n==0||n==1){
                            return 1;
                          }
                          arr[0]=1;arr[1]=2;
                                      ,       
                          if(n==0){
                            return 1;
                          }
                          arr[0]=1;arr[1]=2;
                                   !!!

좋은 웹페이지 즐겨찾기