classSolution{public:intclimbStairs(intn){// dp[i] := # of distinct ways to climb to i-th stairvector<int>dp(n+1);dp[0]=1;dp[1]=1;for(inti=2;i<=n;++i)dp[i]=dp[i-1]+dp[i-2];returndp[n];}};
classSolution{publicintclimbStairs(intn){// dp[i] := # of distinct ways to climb to i-th stairint[]dp=newint[n+1];dp[0]=1;dp[1]=1;for(inti=2;i<=n;++i)dp[i]=dp[i-1]+dp[i-2];returndp[n];}}
classSolution:defclimbStairs(self,n:int)->int:# dp[i] := # Of distinct ways to climb to i-th stairdp=[1,1]+[0]*(n-1)foriinrange(2,n+1):dp[i]=dp[i-1]+dp[i-2]returndp[n]