#P7532. [2017年杭电多校]Numbers

[2017年杭电多校]Numbers

Numbers

Problem Description

zk has n numbers a1,a2,...,ana_1,a_2,...,a_n. For each (i,j) satisfying 1<=i<j<=n, zk generates a new number (ai+aj)(a_i+a_j). These new numbers could make up a new sequence b1£¬b2,...,bn(n1)/2b_1£¬b_2, ... ,b_{n(n-1)/2}. LsF wants to make some trouble. While zk is sleeping, Lsf mixed up sequence a and b with random order so that zk can't figure out which numbers were in a or b. "I'm angry!", says zk. Can you help zk find out which n numbers were originally in a?

Input

Multiple test cases(not exceed 10). For each test case: \bulletThe first line is an integer m(0<=m<=125250), indicating the total length of a and b. It's guaranteed m can be formed as n(n+1)/2. \bulletThe second line contains m numbers, indicating the mixed sequence of a and b. Each aia_i is in [1,10^9]

Output

For each test case, output two lines. The first line is an integer n, indicating the length of sequence a; The second line should contain n space-seprated integers a1,a2,...,an(a1<=a2<=...<=an)a_1,a_2,...,a_n(a_1<=a_2<=...<=a_n). These are numbers in sequence a. It's guaranteed that there is only one solution for each case.

Sample Input

6

2 2 2 4 4 4

21

1 2 3 3 4 4 5 5 5 6 6 6 7 7 7 8 8 9 9 10 11

Sample Output

3

2 2 2

6

1 2 3 4 5 6

Source

2017 Multi-University Training Contest - Team 9

https://acm.hdu.edu.cn/showproblem.php?pid=6168