#JP6. sstzer的竹子
sstzer的竹子
题目描述
sstzer 在他家门口上种植了 () 颗竹子!然而,出于随机刻的因素,一些竹子长得比其他的快。第 株竹子的初始高度为 格,之后每天,第 株植物长高 格。
sstzer 将给你一组由不同整数组成的数组 ,这个数组包含 到 的全部整数。他希望恰好有 颗竹子比第 颗竹子高。找到最少要经过多少天,才能满足他的要求,或者报告这个要求是不可能满足的。
输入格式
从文件 中读入数据
每个测试点中包含多组测试数据。
第一行为一个整数 ,代表测试数据组数()。
对于每一组测试数据,第一行一个整数 (),表示竹子数量。
第二行包含 个整数 (),表示第 颗竹子的初始高度。
第三行包含 个整数 (),表示第 刻竹子每天增长的高度。
第四行包含 个不同的整数 ,表示 sstzer 给你的数组。
保证所有测试数据的 的和不超过 。
输出格式
输出数据到文件
输出 行,每行表示一组测试数据的答案。如果要求不可能满足,输出 。
请注意,由于这个问题涉及的整数大小较大,可能需要使用 64 位整数数据类型(例如,在 C/C++ 中使用 long long
类型)。
样例
6
1
10
1
0
2
7 3
8 10
1 0
2
3 6
10 8
0 1
2
7 3
8 9
1 0
2
7 7
8 8
0 1
2
7 3
8 8
1 0
0
3
2
5
-1
-1
2
5
7 4 1 10 12
3 4 5 2 1
2 1 0 3 4
5
4 10 12 7 1
3 1 1 4 5
2 4 3 1 0
4
7
提示
样例解释 1
在第一组样例中,有 组测试数据。
在第一组测试数据中,只有一颗竹子,所以要求在第 天就已经满足。
在第二组测试数据中,需要让第一颗竹子比第二颗竹子矮。第 天后,它们的高度为 ;第 天后,它们的高度均为 ;第 天后,它们的高度为 ,这是满足要求的第一天。
第三组和第四组测试数据与第二组类似。
在第五组测试数据中,两颗竹子的初始高度均为 英寸,且每天均增长 格,所以它们的高度永远相同。因此,条件永远无法满足。
在第六组测试数据中,初始高度不满足要求且增长速度均相同,所以条件永远无法满足。
样例解释 2
在第二组样例中,有 组测试数据。
在第一组测试数据中,第 天后的最终高度为 。
在第二组测试数据中,第 天后的最终高度为 。
测试点性质
- 测试点 满足 。
- 测试点 满足 ,。
- 测试点 满足 。
- 测试点 没有额外限制。