2151 Worm

来源:互联网 发布:数据库具备的特性 编辑:程序博客网 时间:2024/06/04 22:16

运用了简单的动规,状态转移方程:dp[i][j]=dp[i-1][j-1]+dp[i-1][j+1],只是要注意到第一棵树和最后一棵树,这两棵树到达的路径只有一条。

#include<iostream>#include<cstdio>using namespace std;int main(){    int n,start,ending,time;    int dp[110][110];    while(scanf("%d%d%d%d",&n,&start,&time,&ending)!=EOF)    {        for(int i=0;i<=n;i++)        {            dp[0][i]=0;        }        dp[0][start]=1;        for(int i=1;i<=time;i++)        {                dp[i][1]=dp[i-1][2];                dp[i][n]=dp[i-1][n-1];            for(int j=2;j<n;j++)            {                                dp[i][j]=dp[i-1][j-1]+dp[i-1][j+1];            }        }        printf("%d\n",dp[time][ending]);    }    return 0;}


0 0
原创粉丝点击