改下格式
  • 板块CF1836A Destroyer
  • 楼主y6hz
  • 当前回复18
  • 已保存回复18
  • 发布时间2023/7/28 11:58
  • 上次更新2023/11/3 07:15:27
查看原帖
改下格式
938397
y6hz楼主2023/7/28 11:58

题意翻译

描述

约翰是独立操作系统联邦空间海军的一艘驱逐舰上的首席程序员。他的任务之一是检查机器人的电子大脑是否在战斗中受损。 一个标准的测试是命令机器人排成一行或多行,每行机器人应该一个接一个地站立。然后,每个机器人报告它所在行前面的机器人数量。

机器人排列的一个例子(行的前面在左边)。机器人报告的数字如上所示。第i个机器人报告了数字li。不幸的是,约翰不知道每个机器人所在的行,并且无法检查报告的数字。请确定是否可能以这样的方式排列机器人,使得所有报告的数字都是正确的。

输入

第一行包含一个整数t(1≤t≤1001≤t≤100),表示测试用例的数量。

每个测试用例的第一行包含一个整数nn(1≤n≤1001≤n≤100),表示机器人的数量。

每个测试用例的第二行包含nn个整数l1,l2,…,lnl1,l2,…,ln(0≤li<1000≤li<100),lili表示第ii个机器人所在行前面的机器人数量。

所有测试用例中nn的总和不超过200。

输出

对于每个测试用例,如果存在与机器人报告一致的机器人排列,则输出"YES"。否则,输出"NO"。

你可以以任何大小写形式输出答案。例如,字符串"yEs"、"yes"、"Yes"和"YES"都将被识别为肯定的回答。

提示

在第三个测试用例中,第三个机器人声称它前面有两个机器人。在这种情况下,直接在它前面的机器人应该有一个机器人在前面。没有机器人声称有这种情况,因此没有有效的排列。

2023/7/28 11:58
加载中...