( )Наруто пробрался в логово Орочимару и пытается найти Саске. В логове Орочимару есть T комнат. Каждая дверь в комнату характеризуется количеством печатей n на ней и целочисленными силами печатей a1, a2, ... an. Силы печатей ai не равны нулю и не превосходят 100 по модулю, а n всегда четно. Для того чтобы открыть комнату, Наруто необходимо подобрать такие n печатей с целочисленными силами b1, b2, ..., bn, чтобы a1⋅b1+a2⋅b2+...+an⋅bn=0. Силы печатей Наруто bi также должны быть ненулевыми (как и данные ai) и не превосходить 100 по модулю. Необходимо подобрать печати для всех комнат в логове.
Входные данные
В первой строке задано число T (1≤T≤1000) — количество комнат в логове Орочимару. В следующих строках содержатся описания дверей.
В первой строке описания каждой двери содержится четное число n (2≤n≤100) — количество печатей на двери.
В следующей строке содержится последовательность целых ненулевых чисел a1, a2, ..., an через пробел (|ai|≤100, ai≠0) — силы печатей.
Выходные данные
Для каждой двери на отдельной строке необходимо вывести последовательность ненулевых целых чисел b1, b2, ..., bn (|bi|≤100, bi≠0) через пробел — силы печатей, необходимые для открытия этой двери. Если есть несколько искомых последовательностей, выведите любую из них. Можно доказать, что ответ всегда существует.
Пример
входные данные
2
2
1 100
4
1 2 3 6
выходные данные
-100 1
1 1 1 -1
Примечание
Для первой двери Наруто может использовать силы печатей [−100,1]. Необходимое условие будет выполняться: 1⋅(−100)+100⋅1=0.
Для второй двери Наруто может использовать силы печатей [1,1,1,−1]. Необходимое условие будет выполняться: 1⋅1+2⋅1+3⋅1+6⋅(−1)=0.
program z1;
var a,m:integer;
begin
m:=30000;
repeat
read(a);
if (a <> 0) and (a mod 2 = 0) and (a mod 10 <> 2) and (m > a) then m:=a
until a = 0;
writeln(m)
end.
Объяснение:
m равно максимально возможному чётному числу (согласно условию)
Цикл с пост условием:
ввод числа
проверка числа (верно, когда верны все условия):
не 0 (a <> 0) - не является условием окончания последовательности
число чётное (a mod 2 = 0)
число не оканчивается на 2 (a mod 10 <> 2)
число меньше m (m > a)
если проверка пройдена, то переменной m присваивается значение числа
Проверка условия выхода из цикла (a = 0)
Вывод m