class Solution {
public:
int waysToStep(int n) {
const int MOD = 1e9+7;
if(n==1||n==2) return n;
//1.定义dp表
vector<int> dp(n+1);
//2.初始化
dp[0]=0,dp[1]=1,dp[2]=2,dp[3]=4;
//3.填表
for(int i=4;i<=n;i++)
dp[i]=(((dp[i-1]+dp[i-2])%MOD)+dp[i-3])%MOD;
//4.返回
return dp[n];
}
};
面试题 08.01. 三步问题-dp2
于 2024-08-16 21:13:40 首次发布