Logo Universal Online Judge

UOJ

时间限制:1 s 空间限制:128 MB
统计

题目描述

一位冒险者在一片危险的森林中探险。森林里有一条漂着浮木的河流,浮木的位置分布不均,但只有踩在浮木上才能安全穿越。冒险者可以从一块浮木跳到另一块,但不能掉入河中。

浮木的位置由一个列表 woods 表示(按距离岸边的顺序从小到大排列)。冒险者起初站在第一块浮木上,并且第一步只能跳跃 1 个单位的距离。

之后,如果冒险者上一次跳跃了 k 个单位,那么他下一次跳跃的距离只能选择为 k-1kk+1 个单位(注意跳跃距离必须为正数)。冒险者只能向前跳跃,无法返回。

现在的问题是,冒险者能否通过这条河流并最终跳到最后一块浮木上?

输入

输入包含n个测试用例

测试用例的第一行为整数 n ,有n个测试用例

接下来的2n行输入表示n个用例

第一行表示有该测试用例中有多少个浮木m

表示个整数 w1, w2, …, wm ,表示每个浮木的位置。

输出

如果能跳到最后的浮木上,输出 true ,否则输出 false (其他任何输出都不接受)

示例 1

input
2
8
0 1 3 5 6 8 12 17
8
0 1 2 3 4 8 9 11
output
true
false
解释

对于第一个用例:冒险者可以成功过河,按照如下方案跳跃:跳 1 个单位到第 2 块浮木, 然后跳 2 个单位到第 3 块浮木, 接着 跳 2 个单位到第 4 块浮木, 然后跳 3 个单位到第 6 块浮木, 跳 4 个单位到第 7 块浮木, 最后,跳 5 个单位到第 8 个浮木(即最后一块浮木)。

对于第二个用例:这是因为第 5 和第 6 个浮木之间的间距太大,没有可选的方案供冒险者跳跃过去。

数据范围

5 < n < 500

10 < m < 1000