CF1599J.Bob's Beautiful Array
普及/提高-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
Bob really likes playing with arrays of numbers. That's why for his birthday, his friends bought him a really interesting machine – an array beautifier.
The array beautifier takes an array A consisting of N integers, and it outputs a new array B of length N that it constructed based on the array given to it. The array beautifier constructs the new array in the following way: it takes two numbers at different indices from the original array and writes their sum to the end of the new array. It does this step N times - resulting in an output array of length N . During this process, the machine can take the same index multiple times in different steps.
Bob was very excited about the gift that his friends gave him, so he put his favorite array in the machine. However, when the machine finished, Bob was not happy with the resulting array. He misses his favorite array very much, and hopes to get it back.
Given the array that the machine outputted, help Bob find an array that could be the original array that he put in the machine. Sometimes the machine makes mistakes, so it is possible that no appropriate input array exists for the array it has outputted. In such case, let Bob know that his array is forever lost.
输入格式
The first line contains one positive integer N ( 2≤N≤103 ) – the length of Bob's array.
The second line contains N integers B1 , B2 , ..., BN ( 1≤Bi≤106 ) – the elements of the array the machine outputted.
输出格式
If an appropriate input array exists, print "YES", followed by the input array A1 , A2 , ..., AN ( −109≤Ai≤109 ) in the next line. Otherwise, print "NO".
输入输出样例
输入#1
2 5 5
输出#1
YES 2 3
输入#2
3 1 2 3
输出#2
YES 0 1 2
输入#3
3 2 4 5
输出#3
NO
输入#4
4 1 3 5 7
输出#4
YES 6 -3 4 1