#P15141. [SWERC 2025] Git Gud
[SWERC 2025] Git Gud
说明
你是一名冒险家,为未来主义公司 RoboCorp 工作。你的初始技能等级是一个在 范围内的整数,但你不知道其确切值。你的目标是通过为 RoboCorp 完成任务,使技能等级至少达到 ,但每个任务都需要花费宝贵的机器人币。
你可以选择任意难度和任意正整数的持续时间(以小时计)的任务。然而,成本取决于新任务的长度,以及新任务的难度与你最近一次任务难度的比较。
设 为你最近一次任务的难度。如果你想要承担一个难度为 、持续时间为 的新任务:
- 如果这是你的第一个任务,或者 ,则成本为 机器人币。
- 如果 ,则成本为 机器人币。
你的技能只有在承担的任务难度 恰好等于你当前技能 时才会提升:
- 如果 ,则你的技能增加 。
- 否则,你的技能不变。
每次任务后,你仍然不知道自己的实际技能值。
你初始拥有 机器人币。请找到一个策略(一系列任务),保证不超过预算,并且无论你的初始技能是什么,都能使你的技能至少达到 。
输入格式
输入包含一行一个整数 ()—— 目标技能等级(即最终你的技能必须大于或等于 )。
输出格式
第一行输出一个整数 ()—— 你计划完成的任务数量。
接下来输出 行。第 行必须包含两个整数 和 ()—— 分别表示第 个任务的难度和持续时间(以小时计)。
4
4
1 4
3 1
2 1
3 1
提示
样例解释
在此样例中,你的目标技能是 。你可以使用以下策略:
- 承担一个难度 、持续时间 的任务。这是你的第一个任务,因此支付 机器人币。
- 承担一个难度 、持续时间 的任务。前一个任务难度为 ,由于 ,你支付 机器人币。
- 承担一个难度 、持续时间 的任务。现在 ,由于 ,你支付 机器人币。
- 承担一个难度 、持续时间 的任务。现在 ,由于 ,你支付 机器人币。
总共花费 机器人币,这在你的 机器人币预算之内。
现在验证该策略总是有效的:
- 如果你的初始技能是 ,第一个任务后变为 。
- 如果你的初始技能是 ,第三个任务后变为 ,第四个任务后变为 。
- 如果你的初始技能是 ,第二个任务后变为 。
- 如果你的初始技能是 ,保持 。
因此,无论初始技能如何,你最终都能达到技能 。
翻译由 DeepSeek 完成
京公网安备 11011102002149号