CF2004A.Closest Point

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

Closest Point

题目描述

考虑直线上的一个点集,iijj 的距离是 ij\lvert i-j\rvert

ii 是集合中离 jj 最近的点,当且仅当不存在另一点 kk,满足 jjkk 的距离严格小于 jjii 的距离。换句话说,集合中其他所有点到 jj 的距离大于等于 ij\lvert i-j\rvert

例如,考虑一个点集 {1,3,5,8}\{1,3,5,8\}

  • 对于点 11,最近的点是 33(其他所有点到 11 的距离大于 13=2\lvert 1-3\rvert=2);

  • 对于点 33,有两个最近的点:1155

  • 对于点 55,最近的点是 33(而不是 88,因为它到 55 的距离大于 35\lvert 3-5\rvert);

  • 对于点 88,最近的点是 55

给你一个点集,你必须往里面加入一个原本不存在于点集中的整数点,并使其成为点集中每个点的最近的点。你需要判断是否可能做到。

输入格式

第一行一个整数 t(1t1000)t(1\le t\le 1000),表示测试数据组数。

每一组数据包含以下两行:

  • 第一行一个整数 n(2n40)n(2\le n\le 40),表示点集的大小。

  • 第二行 nn 个整数 x1,x2,,xn(1x1<x2<<xn100)x_1,x_2,\dots,x_n(1\le x_1<x_2<\dots<x_n\le 100),表示点集中的点。

输出格式

对于每一组测试数据,如果可以加入一个点满足要求,输出 YES;否则输出 NO

样例

3
2
3 8
2
5 6
6
1 2 3 4 5 10
YES
NO
NO

在线编程 IDE

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