#CF4086. 做任务
做任务
题目描述
有 个任务。如果你完成了第 个任务,你将获得 个硬币。你每天最多只能完成一次任务。然而,一旦你完成了一个任务,你就不能在 天内再次完成同一个任务。(例如,如果 ,你在第 天完成任务 ,那么你不能在第 天或第 天再次完成该任务,但你可以在第 天再次完成该任务。)
给你两个整数 和 。找到可以在 天内获得至少 个硬币的最大 值。如果不存在这样的 ,则输出 Impossible
。如果 可以任意大,则输出 Infinity
。
输入格式
输入由多个测试用例组成。第一行包含整数 代表测试用例数。测试用例的描述如下。
每个测试用例的第一行包含三个整数 代表任务数、所需获取的硬币数和天数。
每个测试用例的第二行包含 个整数 代表每个任务的奖励。
所有测试用例中的 之和不超过 ,所有测试用例的 之和也不超过 。
输出格式
对于每个测试用例,输出以下内容之一。
- 如果不存在这样的 ,则输出
Impossible
。 - 如果 可以任意大,则输出
Infinity
。 - 否则,输出一个整数,表示可以在 天内获得至少 个硬币的最大 值。
请注意,程序对大小写敏感,您应该按照给定的方式输出字符串。
测试样例
6
2 5 4
1 2
2 20 10
100 10
3 100 3
7 2 6
4 20 3
4 5 6 7
4 100000000000 2022
8217734 927368 26389746 627896974
2 20 4
5 1
2
Infinity
Impossible
1
12
0
样例说明
在第一个测试案例中,在 的情况下,在 天内赚取 个硬币的一种方法如下:
第一天:完成任务 ,获得 个硬币。
第二天:完成任务 ,获得 枚硬币。
第三天:什么都不做。
第四天:完成任务 ,获得 个硬币。
我们总共赚了 个硬币。
在第二个测试案例中,我们可以通过第一次任务赚取 个硬币,因为我们不需要再进行另一次任务,所以 的值可以任意大。
在第三个测试案例中,无论我们怎么做,我们都不能在 天内赚 个硬币。