CF1651B.Prove Him Wrong

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Recently, your friend discovered one special operation on an integer array aa :

  1. Choose two indices ii and jj ( iji \neq j );
  2. Set ai=aj=aiaja_i = a_j = |a_i - a_j| .

After playing with this operation for a while, he came to the next conclusion:

  • For every array aa of nn integers, where 1ai1091 \le a_i \le 10^9 , you can find a pair of indices (i,j)(i, j) such that the total sum of aa will decrease after performing the operation.

This statement sounds fishy to you, so you want to find a counterexample for a given integer nn . Can you find such counterexample and prove him wrong?

In other words, find an array aa consisting of nn integers a1,a2,,ana_1, a_2, \dots, a_n ( 1ai1091 \le a_i \le 10^9 ) such that for all pairs of indices (i,j)(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 tt ( 1t1001 \le t \le 100 ) — the number of test cases. Then tt test cases follow.

The first and only line of each test case contains a single integer nn ( 2n10002 \le n \le 1000 ) — the length of array aa .

输出格式

For each test case, if there is no counterexample array aa of size nn , print NO.

Otherwise, print YES followed by the array aa itself ( 1ai1091 \le a_i \le 10^9 ). 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)(1, 2) and (2,1)(2, 1) .

If you perform the operation on indices (1,2)(1, 2) (or (2,1)(2, 1) ), you'll get a1=a2=1337=336a_1 = a_2 = |1 - 337| = 336 , or array [336,336][336, 336] . In both cases, the total sum increases, so this array aa is a counterexample.

首页