P1095 守望者的逃离

Posted pangbi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了P1095 守望者的逃离相关的知识,希望对你有一定的参考价值。

题意:给出自身能量值,给出逃离所需距离,给出逃离限制时间

     给出条件:每秒17米或者消耗10点能量闪现60米

        也可以选择原地不动回复4点能量值

          问:假如能逃离,输出yes和最短逃离时间

            假如不能逃离,输出最长逃离距离;

思路:很明显,再距离逃离点还很远的时候,我们一直用闪现就行;

      因为即使算上能量消耗存储所耗时间,也比每秒17米快

        所以我们不妨先dp闪现部分

          再dp跑步部分(其实只有在最后快到达终点的时候才需要跑步)即可

技术图片
 1 #include<bits/stdc++.h>
 2 using namespace std;
 3 const int maxn=3e5+10;
 4 int dp[maxn];
 5 int main(){
 6     int m,s,t;
 7     scanf("%d%d%d",&m,&s,&t);
 8     for(int i=1;i<=t;i++){
 9         if(m>=10)dp[i]=dp[i-1]+60,m-=10;
10         else dp[i]=dp[i-1],m+=4;
11     }
12     for(int i=1;i<=t;i++){
13         dp[i]=max(dp[i],dp[i-1]+17);
14         if(dp[i]>=s){
15             printf("Yes
%d",i);
16             return 0;
17         }
18     }
19     printf("No
%d",dp[t]);
20     return 0;
21 }
View Code

 

以上是关于P1095 守望者的逃离的主要内容,如果未能解决你的问题,请参考以下文章

洛谷 P1095 守望者的逃离

CODE[VS] 1144 守望者的逃离 || P1095 守望者的逃离

P1095 守望者的逃离

洛谷——P1095 守望者的逃离

洛谷 P1095 守望者的逃离

P1095 守望者的逃离