7061.Replace with Difference

Time Limit: 1s Memory Limit: 512MB

You are given an array of $n$ integers. You will perform $n-1$ operations on the array.

In one operation, you will choose two numbers $a$ and $b$ from the array, delete both of them from the array and add $|a - b|$ into the array.

Your task is to find a sequence of operations such that the last number remaining in the array is $0$ .

Input Format(From the terminal/stdin)

The first line has an integer $n$ : the length of the array.

The next line has $n$ integers $x_1, x_2,\dots, x_n$ : the contents of the array.

  • $2 \le n \le 1000$
  • $1 \le x_i \le 1000$

Output Format(To the terminal/stdout)

Print $n-1$ lines each containing two integers $a$ and $b$ : the numbers chosen in the operations. You can print any valid solution.

If no solution exists, print only $-1$ .

Sample Input

Copy
5
2 7 4 12 1
 \n
 · · ·  · \n

Sample Output special judge

Copy
2 12
7 10
4 1
3 3
 ·  \n
 ·  \n
 · \n
 · \n
  • $[2, 7, 4, 12, 1] \rightarrow$ remove $2$ and $12$ , add $10$
  • $[7, 4, 1, 10] \rightarrow$ remove $7$ and $10$ , add $3$
  • $[4, 1, 3] \rightarrow$ remove $4$ and $1$ , add $3$
  • $[3, 3] \rightarrow$ remove $3$ and $3$ , add $0$
  • $[0]$ : the final array
Source: CSES, Additional Problems II, 3159

Submit

请先 登录

© 2025 FAQs