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

news2024/11/23 10:37:16

[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 1T10,$ 1 \le S \le 100$;

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

对于 100 % 100\% 100% 的数据, 1 ≤ T ≤ 3 × 1 0 5 1 \le T \le 3\times 10^5 1T3×105 0 ≤ M ≤ 1 0 3 0 \le M \le 10^3 0M103,$ 1 \le S \le 10^8$。
在这里插入图片描述

#include<iostream>
#include<cstdio>
#include<algorithm>
using namespace std;
const int N=3e5+10;
const int M=1e3+10;
int dp[N];//时间为J的能到的最长距离
int main()
{
	int m,s,t;
	cin>>m>>s>>t;
	for(int i=1;i<=t;i++)
	{
		if(m>=10)
		{
			dp[i]=dp[i-1]+60;
			m-=10;
		}
		else dp[i]=dp[i-1],m+=4;
	}
	for(int i=1;i<=t;i++){
        if(dp[i]<dp[i-1]+17)dp[i]=dp[i-1]+17;
        if(dp[i]>=s){
        	cout<<"Yes"<<endl;
        	cout<<i<<endl;
        	return 0;
		}
	}
	
	cout<<"No"<<endl;
	cout<<dp[t]<<endl;
	return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/801854.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

把一个列表拆成N个子列表的四种方法

编程的方法往往不止一种&#xff0c;比如怎么把一个Python种的列表拆成N个子列表&#xff0c;我们可以很容易找到N种方法&#xff0c;也许这就是编程的魅力所在。 一、列表表达式法 这种方法最为简洁&#xff0c;不过可读性差一些 这个方法中&#xff0c;即使原始列表的数量无…

途乐证券:美联储第11次加息 年内降息预期下降

7月26日&#xff0c;美国联邦储藏委员会主席鲍威尔在华盛顿到会记者会。新华社发 当地时刻7月26日&#xff0c;美国联邦储藏委员会一如预期加息25个基点。商场对美联储未来是否会持续加息尚未彻底构成共识&#xff0c;但对年内美联储将敞开降息周期的预期下降。 抑通胀 美联储…

24考研数据结构-队列2

目录 数据结构之队列&#xff1a;链式存储结构与循环队列链式存储结构链式队列的结构链式队列的操作 循环队列循环队列的结构循环队列的操作 链式队列与循环队列的比较结论3.2.3 队列的链式存储结构3.2.3.1定义3.2.3.2链式队列的基本操作——带头结点3.2.3.3 不带头结点的相关操…

PLC自学是否可行?

plc编程的关键是模拟原操作流程&#xff0c;通过运行程序完成控制过程。所以核心内容就是程序对流程的描述。因此&#xff0c;掌握PLC编程语言和基本功能实现是很有必要的。 PLC语言分为梯形图、语句和功能图。常用梯形图&#xff0c;适合基本逻辑描述&#xff0c;语句表适合数…

计算机网络(1) --- 网络介绍

目录 1.介绍协议 基础知识 协议 协议分层 OSI七层模型 2.TCP/IP五层模型 3.网络传输的基本流程 1.基本知识 协议报头 2.局域网通信的基本流程 3.网络传输流程 局域网分类 跨路由器传输 数据包封装和分用 4.网络中的地址管理 1.IP地址 2.MAC地址 3.区别 1.介绍…

商品分类子类新建,手机云进销存,扫码入库出库盘点开单打印

商品分类子类新建&#xff0c;手机扫码开单打印进销存&#xff0c;商贸批发生产企业仓库条码管理软件系统&#xff0c;超市便利店五金茶叶烟酒鞋帽门店零售手机收银管理软件APP_哔哩哔哩_bilibili商品分类子类新建的操作步骤。, 视频播放量 1、弹幕量 0、点赞数 0、投硬币枚数 …

Java基础---final 关键字

目录 定义&#xff1a; 用途&#xff1a; 使用注意事项&#xff1a; final 变量 final 方法 final 类 小结 定义&#xff1a; Java中&#xff0c;final 表示最终&#xff0c;也可以称为完结器&#xff0c;表示对象是最终形态的&#xff0c;不可改变的意思 用途&#xff…

springboot+mybatis多数据源的事务问题

1.springbootmybatis实现多数据源后&#xff0c;针对单个数据源我们可以使用Transactional(name"xxxTransactionManager") 来指定使用的事务管理器&#xff0c;但是如果被注解的方法需要同时支持两个事务管理器呢&#xff0c;这个时候如果用Transactional注解就不 …

设备数字化平台在制药行业数字化转型的思考与实践

近年来&#xff0c;全球制药行业正面临着数字化转型的浪潮。制药4.0的概念正引领着工业物联网、机器人流程自动化和人工智能等先进技术在制药行业的广泛应用。然而&#xff0c;尽管数字化转型在许多行业已经取得了巨大成功&#xff0c;制药行业仍然面临一些挑战。数据孤岛、人才…

git撤销上一次的commit

一行命令 git reset --soft HEAD^如果在vscode上面&#xff0c;就可以

路灯防雷测试标准方案

路灯作为城市照明的重要组成部分&#xff0c;不仅影响着城市的美观和安全&#xff0c;也涉及到城市的节能和环保。因此&#xff0c;路灯的质量和性能是非常重要的。而路灯由于其安装位置和工作环境的特殊性&#xff0c;很容易受到雷击的影响&#xff0c;导致路灯的损坏或故障。…

Sanic 是什么?从原理到实践,全面解析 Sanic 框架的奥秘

在 Python 中&#xff0c;有许多 Web 框架可以帮助开发者构建高性能的异步 Web 应用程序。其中&#xff0c;Sanic 是一款基于 Python 的异步 Web 框架&#xff0c;它提供了快速、简洁和灵活的方式来构建高性能的 Web 应用程序。本文将介绍 Sanic 框架的基本概念、特点和优势&am…

忘记安卓图案/密码锁如何解锁?

如何解锁Android手机图案锁&#xff1f;如何删除忘记的密码&#xff1f;Android 手机锁定后如何重置&#xff1f;这是许多智能手机用户在网上提出的几个问题。为了回答这些问题&#xff0c;我们想出了一些简单有效的方法来解锁任何设备而不丢失数据。 忘记手机密码可能会令人恐…

知网G4《课堂内外》期刊点评_投稿邮箱

知网G4《课堂内外》期刊点评_投稿邮箱 《课堂内外》青少年系列期刊因质量一流、发行争先、力创优秀青少年媒体品牌而备受读者喜爱和社会关注。同时为广告诉求、信息传递构筑起一个面向学生、家庭、学校的高效率低成本&#xff08;CPM&#xff09;的传媒平台。 主管单位 重庆市…

中国国际视听大会即将在北京召开,国产8K影视品牌齐聚

由国家广播电视总局、北京市人民政府指导&#xff0c;北京市广播电视局、北京经济技术开发区管委会主办的中国&#xff08;北京&#xff09;国际视听大会&#xff08;CIAC&#xff09;于2023年8月3日至6日在北京亦创国际会展中心举行。博冠光电作为国产8K摄像机先行者受邀参与&…

支配树学习笔记

学习链接【学习笔记】支配树_cz_xuyixuan的博客-CSDN博客 主要的求法是最后两个结论&#xff1a; 定理4用来求sdom&#xff0c;先搞一个dfs树&#xff0c;然后将点按dfs序从大到小加入&#xff0c;对每个点维护到当前根&#xff08;即已加入点&#xff09;路径上sdom最小是哪个…

物联网场景中的边缘计算解决方案有哪些?

在物联网场景中&#xff0c;边缘计算是一种重要的解决方案&#xff0c;用于在物联网设备和云端之间进行实时数据处理、分析和决策。HiWoo Box作为工业边缘网关设备&#xff0c;具备边缘计算能力&#xff0c;包括单点公式计算、Python脚本编程以及规则引擎&#xff0c;它为物联网…

《Kubernetes故障篇:unable to retrieve OCI runtime error》

一、背景信息 1、环境信息如下&#xff1a; 操作系统K8S版本containerd版本Centos7.6v1.24.12v1.6.12 2、报错信息如下&#xff1a; Warning FailedCreatePodSandBox 106s (x39 over 10m) kubelet (combined from similar events): Failed to create pod sandbox: rpc error: …

python语句学习系列(2)--读取.dat文件

系列文章目录 文章目录 系列文章目录前言1、引入库2、读取dat文件3、输出行列数控制(省略号去除)4、只显示前/后几行5、保存为Excel总结 前言 1、引入库 import pandas as pd import numpy as np import sys2、读取dat文件 2.1、第一种读取 df pd.read_table(r"E:\p…

FastText使用介绍

FastText概念介绍 FastText 是一个由 Facebook 开发的用于文本分类和向量化的开源工具&#xff0c;它是 Word2Vec 的一个拓展&#xff0c;能够处理词汇中的子词信息。FastText 基于神经网络模型&#xff0c;可以将词语表示为高维向量&#xff0c;并且保留了词汇中的语义信息。…