免费馅饼 (变形的数塔)
免费馅饼 (变形的数塔)
1944864971 发表于2年前
免费馅饼 (变形的数塔)
  • 发表于 2年前
  • 阅读 1
  • 收藏 0
  • 点赞 0
  • 评论 0

【腾讯云】买域名送云解析+SSL证书+建站!>>>   

本题思路对了就很好写
数塔的变形

从第5秒之后可能走的位置就在0到10内
仔细分析 和以前做的题目的区别与联系

include<stdio.h>

include<string.h>

include

include

using namespace std;
int dp[100005][15];
int main()
{
int n;
while(scanf("%d",&n),n)
{
memset(dp,0,sizeof(dp));
int t=-0x3f3f3f3f;
for(int i=1; i<=n; i++)
{
int a,b;
scanf("%d%d",&a,&b);
if(b>t)
t=b;
dp[b][a]++;
}

    for(int i=t-1; i>=0; i--)
    {
        if(i>=5)
        {
            for(int j=0; j<=10; j++)
            {
                if(j==0)
                    dp[i][j]+=max(dp[i+1][j],dp[i+1][j+1]);
                else dp[i][j]+=max(dp[i+1][j-1],max(dp[i+1][j],dp[i+1][j+1]));
            }
        }
        else for(int j=5-i;j<=5+i;j++)
        {
            dp[i][j]+=max(dp[i+1][j-1],max(dp[i+1][j],dp[i+1][j+1]));
        }
    }
    printf("%d\n",dp[0][5]);
}
return 0;

}

  • 打赏
  • 点赞
  • 收藏
  • 分享
共有 人打赏支持
粉丝 0
博文 57
码字总数 0
×
1944864971
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: