#P3377. 第2题-数组长度排列
第2题-数组长度排列
题目内容
给定一个长度为 的整数数组 。你可以对 进行若干次下面的操作(可以不操作):
- 选择一个下标 ,并将 更新为。在这里, 意味着对 下取整。
小欧想知道,是否存在一个操作序列,使得在所有操作后数组 为一个排列?
【名词解释】
长度为 的排列是由 这 个整数、按任意顺序组成的数组(每个整数均恰好出现一次)。例如,{} 是一个长度为 的排列,而 {} 和 {} 都不是排列,因为前者存在重复元素,后者包含了超出范围的数。
输入描述
每个测试文件均包含多组测试数据。第一行输入一个整数 代表数据组数,每组测试数据描述如下:
第一行包含一个整数 ,表示数组 的长度。
第二行包含长度为 个整数,
除此之外,保证单个测试文件的 之和不超过 。
输出描述
输出 行,其中第 行为第 组测试数据的答案。对于每一组测试数据,如果答案存在,在一行上输出 ; 否则直接输出 。您可以以任何大小写形式输出答案。例如,字符串 和 都将被视为肯定的回答。
样例1
输入
5
3
1 2 4
3
1 2 6
1
1
2
1 536870911
5
25752 3010 1188 126 270
输出
NO
YES
YES
NO
YES
说明
对于第 组测试数据,我们可以对 进行一次操作,数组 变为 {} ,是长度为 的排列。