链接

题目地址

[NOIP2007 普及组] 守望者的逃离

题目背景

恶魔猎手尤迪安野心勃勃,他背叛了暗夜精灵,率领深藏在海底的娜迦族企图叛变。

题目描述

守望者在与尤迪安的交锋中遭遇了围杀,被困在一个荒芜的大岛上。

为了杀死守望者,尤迪安开始对这个荒岛施咒,这座岛很快就会沉下去。到那时,岛上的所有人都会遇难。

守望者的跑步速度为 17 m / s 17m/s 17m/s,以这样的速度是无法逃离荒岛的。庆幸的是守望者拥有闪烁法术,可在 1 s 1s 1s 内移动 60 m 60m 60m,不过每次使用闪烁法术都会消耗魔法值 10 10 10 点。守望者的魔法值恢复的速度为 4 4 4 点每秒,只有处在原地休息状态时才能恢复。

现在已知守望者的魔法初值 M M M,他所在的初始位置与岛的出口之间的距离 S S S,岛沉没的时间 T T T。你的任务是写一个程序帮助守望者计算如何在最短的时间内逃离荒岛,若不能逃出,则输出守望者在剩下的时间内能走的最远距离。

注意:守望者跑步、闪烁或休息活动均以秒为单位,且每次活动的持续时间为整数秒。距离的单位为米。

输入格式

输入数据共一行三个非负整数,分别表示 M M M, S S S, T T T。

输出格式

输出数据共两行。

第一行一个字符串 Yes \texttt{Yes} Yes 或 No \texttt{No} No,即守望者是否能逃离荒岛。

第二行包含一个整数。第一行为 Yes \texttt{Yes} Yes 时表示守望者逃离荒岛的最短时间;第一行为 No \texttt{No} No 时表示守望者能走的最远距离。

样例 #1

样例输入 #1

39 200 4

样例输出 #1

No
197

样例 #2

样例输入 #2

36 255 10

样例输出 #2

Yes
6

提示

对于 30 % 30\% 30% 的数据, 1 ≤ T ≤ 10 1 \le T \le 10 1≤T≤10, 1 ≤ S ≤ 100 1 \le S \le 100 1≤S≤100;

对于 50 % 50\% 50% 的数据, 1 ≤ T ≤ 1 0 3 1 \le T \le 10^3 1≤T≤103, 1 ≤ S ≤ 1 0 4 1 \le S \le 10^4 1≤S≤104;

对于 100 % 100\% 100% 的数据, 1 ≤ T ≤ 3 × 1 0 5 1 \le T \le 3\times 10^5 1≤T≤3×105, 0 ≤ M ≤ 1 0 3 0 \le M \le 10^3 0≤M≤103, 1 ≤ S ≤ 1 0 8 1 \le S \le 10^8 1≤S≤108。

思路

循环时间,计算每个时间点用走和瞬移的距离,如果瞬移的距离大于都得距离,那么就把走的距离更新成瞬移的距离。

AC代码

#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
#include<cmath>using namespace std;int main() {int m, s, t, now = 0;cin >> m >> s >> t;int s1 = 0, s2 = 0;  //s1代表走,s2代表瞬移for (int i = 1; i <= t; i++) {s1 += 17;if (m >= 10) {s2 += 60;m -= 10;}else m += 4;if (s2 > s1) s1 = s2;  //如果瞬移的距离比走的多那么就从瞬移的距离继续走if (s1 > s) {cout << "Yes" << endl << i << endl;return 0;}}cout << "No" << endl << s1 << endl;return 0;
}

NOIP200703守望者的逃离相关推荐

  1. NOIP200703守望者的逃离 题解

    NOIP200703守望者的逃离 题解 题目 链接 字面描述 题目背景 题目描述 输入格式 输出格式 样例 #1 样例输入 #1 样例输出 #1 样例 #2 样例输入 #2 样例输出 #2 提示 思路 ...

  2. 【每日DP】day 5、P1095 守望者的逃离(好像悟到了DP的真谛)难度⭐⭐★

    P1095 守望者的逃离 输入 39 200 4 输出 No 197 输入 36 255 10 输出 Yes 6 好像悟到了DP的真谛(doge) 动态规划,就是动态地维护当前的状态. 本题种状态是距 ...

  3. [sicily]1484. 守望者的逃离

    1484. 守望者的逃离 Constraints Time Limit: 1 secs, Memory Limit: 32 MB Description 恶魔猎手尤迪安野心勃勃,他背叛了暗夜精灵,率领 ...

  4. noip普及组2007 守望者的逃离

    守望者的逃离 描述 恶魔猎手尤迪安野心勃勃,他背叛了暗夜精灵,率领深藏在海底的娜迦族企图叛变.守望者 在与尤迪安的交锋中遭遇了围杀,被困在一个荒芜的大岛上.为了杀死守望者,尤迪安开始对这 个荒岛施咒, ...

  5. 7.5 ZUFEIOJ E: 守望者的逃离 贪心

    问题 E: 守望者的逃离-NOIP2007PJT3 时间限制: 1 Sec   内存限制: 128 MB 提交: 23   解决: 9 [ 提交][ 状态][ 讨论版][命题人: 外部导入] 题目描述 ...

  6. noip2007 守望者的逃离 (贪心)

    A1161. 守望者的逃离 时间限制: 1.0s   内存限制: 256.0MB   总提交次数: 590   AC次数: 181   平均分: 57.25 将本题分享到:         查看未格式 ...

  7. Sicily 1484. 守望者的逃离

    1484. 守望者的逃离 Constraints Time Limit: 1 secs, Memory Limit: 32 MB Description 恶魔猎手尤迪安野心勃勃,他背叛了暗夜精灵,率领 ...

  8. 守望者的逃离 贪心 动态规划

    守望者的逃离 动态规划 贪心 题目链接https://www.luogu.com.cn/problem/P1095 题目描述: 恶魔猎手尤迪安野心勃勃,他背叛了暗夜精灵,率领深藏在海底的娜迦族企图叛变 ...

  9. [动态规划] 守望者的逃离

    今天来给大家讲守望者的逃离这道题 先上题目 题目描述 恶魔猎手尤迪安野心勃勃,他背叛了暗夜精灵,率领深藏在海底的娜迦族企图叛变.守望者在与尤迪安的交锋中遭遇了围杀,被困在一个荒芜的大岛上.为了杀死守望 ...

最新文章

  1. μCos-ii学习笔记1_概述
  2. cnil在python_在Python中使用cumprod()计算权益曲线
  3. CSU 1328 近似回文词【最长回文字符串(三种方法)】
  4. 音视频技术开发周刊 | 148
  5. jquery 简单分页插件jQuerypage
  6. java Class对象返回的都是指向同一个java堆地址上的Class引用
  7. 物联网常用的组网方式浅析
  8. 新东方面试知识点记录
  9. 用vb.net实现拖放功能
  10. pythonweb自动化测试实例_[转载]python webdriver自动化测试实例
  11. HTML5响应式品牌服装设计类织梦模板
  12. 管理软件开发历程之一Coolite配置
  13. 初学者的React全家桶完整实例
  14. 机器学习笔记(十七):交叉验证
  15. MYSQL常用函数总结
  16. 新手如何使用JavaScript读取json文件
  17. 对OB28的源代码进行调试
  18. 证件照处理软件(IDPhoto Processor)免费版 v3.2.10
  19. matlab等高线线型设置命令,MATLAB等高线命令
  20. 即将30岁的2020年总结,放眼未来的未雨绸缪

热门文章

  1. Python moviepy 快速视频剪辑编辑神器
  2. 基于小鼠的基因集数据库资源(人鼠基因集比较)
  3. 算法训练 Beaver's Calculator
  4. VS注释提示英文变中文的方法
  5. 丧心病狂!华为折叠屏手机一秒售罄,炒到9万一部!
  6. 中国文化产业基地(园区)前景预测和发展战略规划建议报告2021年版
  7. CLIP4Clip: An Empirical Study of CLIP for End to End Video Clip Retrieval 论文解读
  8. Altium Designer--如何添加泪滴
  9. 微信步数C语言程序,获取微信步数 - osc_1v2pb1nt的个人空间 - OSCHINA - 中文开源技术交流社区...
  10. K.M.P算法个人浅谈