欢迎来到起遇信息学
起遇信息学正处于上线筹建阶段,以下功能已全部开放免费体验: ✅ 完整题库浏览与代码提交评测(C / C++ / Python / Java 等) ✅ 入门到进阶的系列课程试读、作业与考试 ✅ AI 提示、AI 作业分析等智能助教功能 ✅ 赛事模拟与个人能力报告 ✅ 邮箱注册开放 ⏳ 付费课程订阅与微信/支付宝支付通道 ⏳ 手机号登录,微信扫码登录、微信公众号绑定 使用中如遇任何问题,欢迎通过页面底部 **"联系我们"** 与我们沟通。
CF1010A.Fly
Fly
题目描述
Natasha 将乘坐火箭飞往火星并返回地球。在前往火星的途中,她还会在 个中转星球着陆。具体来说:我们将所有星球编号为 到 , 号为地球, 号为火星。Natasha 将恰好进行 次飞行:。
每次从 号星球飞往 号星球的飞行包括两个阶段:从 号星球起飞和在 号星球着陆。因此,整个旅程的流程为:第 号星球 从第 号星球起飞 在第 号星球着陆 第 号星球 从第 号星球起飞 在第 号星球着陆 第 号星球 从第 号星球起飞 在第 号星球着陆 第 号星球。
火箭连同所有有效载荷(不含燃料)的质量为 吨。然而,Natasha 并不知道应该加多少燃料。不幸的是,燃料只能在地球上加注,因此如果火箭在其他星球上燃料耗尽,Natasha 将无法返回家园。每次起飞和着陆都需要消耗燃料。已知 吨燃料可以在第 号星球上起飞 吨的火箭,或在第 号星球上着陆 吨的火箭。
例如,如果火箭的重量为 吨,燃料重量为 吨,起飞系数为 (即 ),那么将会消耗 吨燃料(因为 )。起飞后剩余的燃料为 吨。
请注意,起飞或着陆时允许消耗非整数数量的燃料,初始加注的燃料量也可以是非整数。
请帮助 Natasha 计算需要加注的最小燃料质量。注意,火箭在飞行过程中需要用燃料来携带有效载荷和剩余的燃料,但不需要携带已经消耗的燃料。假设火箭的起飞和着陆都是瞬时完成的。
输入格式
第一行包含一个整数 (),表示星球的数量。
第二行包含一个整数 (),表示有效载荷的质量。
第三行包含 个整数 (),其中 表示在第 号星球上 吨燃料可以起飞的火箭质量。
第四行包含 个整数 (),其中 表示在第 号星球上 吨燃料可以着陆的火箭质量。
保证如果 Natasha 能完成飞行,则所需燃料不会超过 吨。
输出格式
如果 Natasha 能够经过 个星球飞往火星并返回地球,输出她需要加注的最小燃料质量(单位:吨)。否则,输出 。
保证如果 Natasha 能完成飞行,则所需燃料不会超过 吨。
如果你的答案的绝对误差或相对误差不超过 ,则视为正确。形式化地,设你的答案为 ,标准答案为 ,当 时,视为正确。
说明/提示
我们来看第一个样例。
初始时,火箭和燃料的总质量为 吨。
- 从地球起飞时, 吨燃料可以起飞 吨质量,因此起飞 吨需要消耗 吨燃料。剩余火箭和燃料的总质量为 吨。
- 在火星着陆时, 吨燃料可以着陆 吨质量,因此着陆 吨需要消耗 吨燃料。剩余火箭和燃料的总质量为 吨。
- 从火星起飞时, 吨燃料可以起飞 吨质量,因此起飞 吨需要消耗 吨燃料。剩余火箭和燃料的总质量为 吨。
- 在地球着陆时, 吨燃料可以着陆 吨质量,因此着陆 吨需要消耗 吨燃料。剩余质量为 吨,即没有燃料的火箭。
在第二个样例中,火箭甚至无法从地球起飞。
由 ChatGPT 4.1 翻译
样例
2
12
11 8
7 5
10.0000000000
3
1
1 4 1
2 5 3
-1
6
2
4 6 3 3 5 6
2 6 3 6 5 3
85.4800000000
在线编程 IDE
建议全屏模式获得最佳体验
| 进入全屏编程 | Alt+E |
| 递交评测 | Ctrl+Enter |
| 注释/取消注释 | Ctrl+/ |
| 缩放字体 | Ctrl+滚轮 |