DP-走楼梯

有N级楼梯,一次可走1或2级,问有几种走法?

N<=5000

分析:

走到P级的走法=走到P-1的走法数+走到P-2的走法数

所以为动规。

#include<cstdio>

#define INF 1000000

int dp[INF]={0},n;
int main(){
	scanf("%d",&n);
	dp[0]=1;//初始化第一个
	for(int i=1;i<=n;i++)//递推
	{
		if(i-1>=0)
		{
			dp[i]=dp[i-1];
		}
		if(i-2>=0)
		{
			dp[i]=dp[i-1]+dp[i-2];
		}
		printf("f[%d]=%d\n",i,dp[i]);//分别输出1至N楼的走法
	}
}

猜你喜欢

转载自blog.csdn.net/wallyIII/article/details/82817880