Олимпиадный тренинг

Задача . D. Вупсень, Пупсень и 0


Вупсеню и Пупсеню подарили массив целых чисел. Так как Вупсень не любит число \(0\), он выкинул все числа, равные \(0\) из массива. В итоге получился массив \(a\) длины \(n\).

Пупсень, напротив, любит число \(0\) и расстроился, когда увидел массив без нулей. Чтобы подбодрить Пупсеня, Вупсень решил придумать другой массив \(b\) длины \(n\) такой, что \(\sum_{i=1}^{n}a_i \cdot b_i=0\). Так как Вупсень не любит число \(0\), в массиве \(b\) не должно быть чисел, равных \(0\). К тому же числа в этом массиве не должны быть слишком большими, поэтому сумма их абсолютных значений не может превышать \(10^9\). Помогите Вупсеню найти любой такой массив \(b\)!

Входные данные

В первой строке находится единственное целое число \(t\) (\(1 \le t \le 100\)) — количество наборов входных данных. Следующие \(2 \cdot t\) строк содержат описания наборов входных данных. Описание каждого набора состоит из двух строк.

Первая строка описания каждого набора входных данных содержит единственное целое число \(n\) (\(2 \le n \le 10^5\)) — длину массива.

Вторая строка содержит \(n\) целых чисел \(a_1, a_2, \ldots, a_n\) (\(-10^4 \le a_i \le 10^4\), \(a_i \neq 0\)) — элементы массива \(a\).

Гарантируется, что сумма значений \(n\) по всем наборам входных данных не превосходит \(2 \cdot 10^5\).

Выходные данные

Для каждого набора входных данных выведите \(n\) целых чисел \(b_1, b_2, \ldots, b_n\) — элементы массива \(b\) (\(|b_1|+|b_2|+\ldots +|b_n| \le 10^9\), \(b_i \neq 0\), \(\sum_{i=1}^{n}a_i \cdot b_i=0\)).

Можно показать, что ответ всегда существует.

Примечание

В первом наборе входных данных \(5 \cdot 1 + 5 \cdot (-1)=5-5=0\). Также можно было, например, вывести \(3\) \(-3\), так как \(5 \cdot 3 + 5 \cdot (-3)=15-15=0\)

Во втором наборе входных данных \(5 \cdot (-1) + (-2) \cdot 5 + 10 \cdot 1 + (-9) \cdot (-1) + 4 \cdot (-1)=-5-10+10+9-4=0\).


Примеры
Входные данныеВыходные данные
1 3
2
5 5
5
5 -2 10 -9 4
7
1 2 3 4 5 6 7
1 -1
-1 5 1 -1 -1
-10 2 2 -3 5 -1 -1

time 1000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w645
Комментарий учителя