CF296A Yaroslav and Permutations

题目描述

Yaroslav 有一个包含 $n$ 个整数的数组。每秒钟,Yaroslav 可以交换相邻的两个数组元素。现在 Yaroslav 想知道,他能否在有限时间内将数组变为任意两个相邻元素都不相同的状态。 请帮助 Yaroslav。

输入格式

第一行包含一个整数 $n$ $(1 \leq n \leq 100)$,表示数组中的元素个数。 第二行包含 $n$ 个整数 $a_1, a_2, \ldots, a_n$ $(1 \leq a_i \leq 1000)$,表示数组的各个元素。

输出格式

在一行中输出 "YES"(不含引号),如果 Yaroslav 能够得到他需要的数组;否则输出 "NO"(不含引号)。

说明/提示

在第一个样例中,初始数组已经符合要求。 在第二个样例中,Yaroslav 可以获得数组:$1$、$2$、$1$。他只需交换最后两个元素即可。 在第三个样例中,Yaroslav 无法得到满足要求的数组。 由 ChatGPT 5 翻译