• rqnoj-390-地震了!-动态规划


    一步步的往前走,判断当前状态与上一个状态的关闭。

    注意,题目输入的楼层的速度是从小到大,而实际运用的楼层顺序是从大到小。。

    #include<stdio.h>
    #include<algorithm>
    #include<iostream>
    #include<string.h>
    #define max3(a,b,c) max(max(a,b),c)
    using namespace std;
    int dp[110][221];
    int b[10010];
    int main()
    {
        int n,v,k,i,j,a;
        while(~scanf("%d%d%d",&n,&v,&k))
        {
            memset(dp,0,sizeof(dp));
            for(i=n-1;i>=1;i--)scanf("%d",&b[i]);
            int leap=0;
            for(i=1;i<n;i++)
            {
                a=b[i];
                if(i==1)
                {
                    if(a<=v&&(v-a)<=k)dp[1][v]=v;
                    else leap=1;
                    continue;
                }
                for(j=0;j<201;j++)
                {
                    if(j>=a&&j<=a+k)dp[i][j]=max3(dp[i-1][j+1],dp[i-1][j-1],dp[i-1][j]);
                    else dp[i][j]=0;
                    if(dp[i][j]!=0)dp[i][j]+=j;
                }
            }
            int maxx=0;
            for(i=0;i<201;i++)
            {
                maxx=max(maxx,dp[n-1][i]);
            }
            if(maxx==0||leap)cout<<"YI DING YAO JIAN CHI JI HUA SHENG YU"<<endl;
            else printf("%.2f
    ",maxx*1.0/(n-1));
        }
        return 0;
    }
    


  • 相关阅读:
    17-canvas绘制扇形
    16-canvas绘制圆弧
    15-canvas渐变色
    14-canvas绘制柱状图
    13-绘制矩形的简写方式
    12-es6类的方式封装折线图
    11-canvas绘制折线图
    10-canva绘制数据点
    jenkins 环境部署 (yum安装方式)
    BerkeleyDB安装
  • 原文地址:https://www.cnblogs.com/fuhaots2009/p/3429314.html
Copyright © 2020-2023  润新知