A4789 | 算法星际探险(space)
时间限制1s
内存限制128MB
通过 / 提交0/0
题目描述
在遥远的虚拟宇宙边陲,有一片被誉为 “算法星域” 的神秘星系。该星系中的每一颗星球都承载着不同的算法奥秘,其能量核心会随时间进行显著的变化:
- 能量核心于初始时(0秒)蕴藏 1 单位能量。
- 当时间每累计 $a$ 秒后,核心能量翻倍。
- 当时间每累计 $b$ 秒后,核心能量减半(舍弃被减去的部分能量,等同于当前能量向下取整后减半;如果恰逢核心能量数值为奇数,则减半后需向上取整保留)。
- 若在同一秒内同时触发翻倍与减半,则先执行翻倍操作,再进行减半。
你作为一名勇敢的宇航员助手,正协助探索这些星球的能量规律。你的任务是:在总计 $t$ 秒后,计算出能量核心所剩余的能量值,并将结果对 $10^9 + 7$ 取余输出。
- 能量核心于初始时(0秒)蕴藏 1 单位能量。
- 当时间每累计 $a$ 秒后,核心能量翻倍。
- 当时间每累计 $b$ 秒后,核心能量减半(舍弃被减去的部分能量,等同于当前能量向下取整后减半;如果恰逢核心能量数值为奇数,则减半后需向上取整保留)。
- 若在同一秒内同时触发翻倍与减半,则先执行翻倍操作,再进行减半。
你作为一名勇敢的宇航员助手,正协助探索这些星球的能量规律。你的任务是:在总计 $t$ 秒后,计算出能量核心所剩余的能量值,并将结果对 $10^9 + 7$ 取余输出。
输入格式
从标准输入读取一行,包含三个用空格分隔的正整数 $a, b, t$,依次表示:
- $a$:能量翻倍的时间间隔
- $b$:能量减半的时间间隔
- $t$:实验观测的总时长
- $a$:能量翻倍的时间间隔
- $b$:能量减半的时间间隔
- $t$:实验观测的总时长
输出格式
输出一个整数,代表历经 $t$ 秒后能量核心的剩余值(已对 $10^9 + 7$ 取余)。
输入输出样例
输入 #1
4 7 15
输出 #1
2
输入 #2
5 3 24
输出 #2
1
数据范围
- 对于 $20\%$ 的数据,$a = b$。
- 对于 $50\%$ 的数据,$a < b$。
- 对于 $100\%$ 的数据,$0 < t, a, b < 10^6$。
C++ 编辑器
输入
输出
可保存默认模板;新题优先使用已保存模板。
当前快捷键仅展示,暂不支持修改。
- 撤销
Ctrl / ⌘ + Z - 重做
Ctrl / ⌘ + Y - 查找
Ctrl / ⌘ + F - 全选
Ctrl / ⌘ + A - 复制
Ctrl / ⌘ + C - 剪切
Ctrl / ⌘ + X - 粘贴
Ctrl / ⌘ + V - 自动排版
工具栏排版按钮 - 草稿保存
编辑时自动保存到本机
历史
提交记录
状态说明时间源码
AI
作答助手
你好,我是作答助手。可以问思路、复杂度、样例含义或代码报错原因;不会直接给出完整 AC 代码。
确定要清空代码吗?