CF1399A.Remove Smallest

传统题 时间 2000 ms 内存 256 MiB 3 尝试 1 已通过 1 标签

Remove Smallest

题目描述

给定一个由 nn 个正整数(大于零)组成的数组 aa

每次操作,你可以选择两个下标 iijjiji \ne j),使得 aia_iaja_j 的绝对差不超过 11(即 aiaj1|a_i - a_j| \le 1),然后移除这两个元素中较小的一个。如果两个元素相等,你可以移除其中任意一个(但只能移除一个)。

你的任务是判断,是否可以通过若干次(可能为零次)上述操作,将数组变为只剩下一个元素。

你需要回答 tt 组独立的测试用例。

输入格式

输入的第一行包含一个整数 tt1t10001 \le t \le 1000),表示测试用例的数量。接下来是 tt 组测试用例。

每组测试用例的第一行包含一个整数 nn1n501 \le n \le 50),表示数组 aa 的长度。第二行包含 nn 个整数 a1,a2,,ana_1, a_2, \dots, a_n1ai1001 \le a_i \le 100),表示数组 aa 的各个元素。

输出格式

对于每组测试用例,输出一行答案:如果可以通过若干次操作将数组变为只剩下一个元素,输出 "YES";否则输出 "NO"。

说明/提示

在示例的第一个测试用例中,我们可以按如下顺序进行操作:

  • 选择 i=1i=1j=3j=3,移除 aia_i(此时 aa 变为 [2,2][2, 2]);
  • 选择 i=1i=1j=2j=2,移除 aja_j(此时 aa 变为 [2][2])。

在第二个测试用例中,可以任意选择 iijj 进行操作,移除哪个元素都无所谓。

在第三个测试用例中,无法消除 2244

由 ChatGPT 4.1 翻译

样例

5
3
1 2 2
4
5 5 5 5
3
1 2 4
4
1 3 4 4
1
100
YES
YES
NO
NO
YES

在线编程 IDE

建议全屏模式获得最佳体验