CF296A.Yaroslav and Permutations
普及-
通过率:0%
时间限制:2.00s
内存限制:256MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
Yaroslav has an array that consists of n integers. In one second Yaroslav can swap two neighboring array elements. Now Yaroslav is wondering if he can obtain an array where any two neighboring elements would be distinct in a finite time.
Help Yaroslav.
亚罗斯拉夫有一个由 n 个整数组成的数组。每一秒,亚罗斯拉夫可以交换两个相邻的数组元素。现在亚罗斯拉夫想知道:他能否在有限的时间内得到一个数组,使得其中任意两个相邻元素均不相同?
请帮助亚罗斯拉夫。
输入格式
The first line contains integer n (1 ≤ n ≤ 100) — the number of elements in the array. The second line contains n integers _a_1, _a_2, ..., a__n (1 ≤ a__i ≤ 1000) — the array elements.
第一行包含一个整数 n(1≤n≤100)—— 数组中元素的个数。
第二行包含 n 个整数 a1, a2, …, an(1≤ai≤1000)—— 数组的元素。
输出格式
In the single line print "YES" (without the quotes) if Yaroslav can obtain the array he needs, and "NO" (without the quotes) otherwise.
在单行中,如果亚罗斯拉夫能够得到他所需的数组,则输出 "YES"(不带引号),否则输出 "NO"(不带引号)。
输入输出样例
输入#1
1 1
输出#1
YES
输入#2
3 1 1 2
输出#2
YES
输入#3
4 7 7 7 7
输出#3
NO
说明/提示
In the first sample the initial array fits well.
In the second sample Yaroslav can get array: 1, 2, 1. He can swap the last and the second last elements to obtain it.
In the third sample Yarosav can't get the array he needs.
在第一个样例中,初始数组已经满足要求。
在第二个样例中,雅罗斯拉夫可以得到数组:1, 2, 1。他可以通过交换最后两个元素来实现该数组。
在第三个样例中,雅罗斯拉夫无法得到他所需的数组。
输入解题思路,AI测评打分。不知道怎么写?