AT_kupc2016_i.ティッシュ配り
省选/NOI-
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
Eli- 1 先生决定做一份持续 N 秒的发放纸巾的兼职工作。Eli- 1 先生拥有一种特殊能力——分身,他打算利用这一能力尽可能多地发放纸巾。Eli- gen 先生可以进行以下两种操作:
- 花费 gen×C 秒,将自己分身为 Eli- gen 先生和 Eli- (gen+1) 先生两人。
- 无论是哪一代(即 gen 的值),都可以花费 1 秒发放恰好 1 张纸巾。
不能在发放纸巾的同时进行分身。给定 N 和 C,请你计算 Eli- 1 先生和所有分身合计最多能发放多少张纸巾。由于答案可能非常大,请输出对 1000000007(即 109+7)取模后的结果。
输入格式
输入由多组查询组成。
第一行包含一个整数 Q,表示查询的个数。
接下来的 Q 行,每行包含两个用半角空格分隔的整数 Nq 和 Cq,分别表示第 q 个查询的工作时间和分身所需时间的系数。
输出格式
对于每个查询,输出 Eli- 1 先生和所有分身合计最多能发放的纸巾数量。由于答案可能非常大,请输出对 1000000007(即 109+7)取模后的结果。
输入输出样例
输入#1
2 20 8 20 12
输出#1
24 20
输入#2
1 20 3
输出#2
67
输入#3
1 200 1
输出#3
148322100
说明/提示
限制
- 1≤Q≤100000=105
- 1≤Nq≤100000=105
- 1≤Cq≤20000=2×104
部分得分
如果你能正确解决 Q=1 的数据集,可以获得 30 分的部分分数。
如果你能正确解决没有额外限制的数据集,可以再获得 270 分,总分为 300 分。
样例解释 1
对于第一个查询,如果不分身只能发放 20 张纸巾,而分身后两个人各发放 12 张,可以发放 24 张纸巾,这是最大值。对于第二个查询,如果分身后两个人各发放 8 张纸巾,还不如不分身直接发放 20 张。
样例解释 2
可以按照下图进行操作。黑线表示分身,红线表示发放纸巾。
这个案例满足部分分数的额外限制。
样例解释 3
请注意需要对 1000000007(109+7)取模。这个案例满足部分分数的额外限制。
由 ChatGPT 4.1 翻译
输入解题思路,AI测评打分。不知道怎么写?