CF1651B.Prove Him Wrong
普及/提高-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
Recently, your friend discovered one special operation on an integer array a :
- Choose two indices i and j ( i=j );
- Set ai=aj=∣ai−aj∣ .
After playing with this operation for a while, he came to the next conclusion:
- For every array a of n integers, where 1≤ai≤109 , you can find a pair of indices (i,j) such that the total sum of a will decrease after performing the operation.
This statement sounds fishy to you, so you want to find a counterexample for a given integer n . Can you find such counterexample and prove him wrong?
In other words, find an array a consisting of n integers a1,a2,…,an ( 1≤ai≤109 ) such that for all pairs of indices (i,j) performing the operation won't decrease the total sum (it will increase or not change the sum).
输入格式
The first line contains a single integer t ( 1≤t≤100 ) — the number of test cases. Then t test cases follow.
The first and only line of each test case contains a single integer n ( 2≤n≤1000 ) — the length of array a .
输出格式
For each test case, if there is no counterexample array a of size n , print NO.
Otherwise, print YES followed by the array a itself ( 1≤ai≤109 ). If there are multiple counterexamples, print any.
输入输出样例
输入#1
3 2 512 3
输出#1
YES 1 337 NO YES 31 4 159
说明/提示
In the first test case, the only possible pairs of indices are (1,2) and (2,1) .
If you perform the operation on indices (1,2) (or (2,1) ), you'll get a1=a2=∣1−337∣=336 , or array [336,336] . In both cases, the total sum increases, so this array a is a counterexample.