题意翻译
描述
约翰是独立操作系统联邦空间海军的一艘驱逐舰上的首席程序员。他的任务之一是检查机器人的电子大脑是否在战斗中受损。 一个标准的测试是命令机器人排成一行或多行,每行机器人应该一个接一个地站立。然后,每个机器人报告它所在行前面的机器人数量。
机器人排列的一个例子(行的前面在左边)。机器人报告的数字如上所示。第i个机器人报告了数字li。不幸的是,约翰不知道每个机器人所在的行,并且无法检查报告的数字。请确定是否可能以这样的方式排列机器人,使得所有报告的数字都是正确的。
输入
第一行包含一个整数t(1≤t≤100),表示测试用例的数量。
每个测试用例的第一行包含一个整数n(1≤n≤100),表示机器人的数量。
每个测试用例的第二行包含n个整数l1,l2,…,ln(0≤li<100),li表示第i个机器人所在行前面的机器人数量。
所有测试用例中n的总和不超过200。
输出
对于每个测试用例,如果存在与机器人报告一致的机器人排列,则输出"YES"。否则,输出"NO"。
你可以以任何大小写形式输出答案。例如,字符串"yEs"、"yes"、"Yes"和"YES"都将被识别为肯定的回答。
提示
在第三个测试用例中,第三个机器人声称它前面有两个机器人。在这种情况下,直接在它前面的机器人应该有一个机器人在前面。没有机器人声称有这种情况,因此没有有效的排列。