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

Задача . A. Целочисленное разнообразие


Задача

Темы: реализация *800

Вам даны \(n\) целых чисел \(a_1, a_2, \ldots, a_n\). Вы можете выбрать любое подмножество этих чисел (возможно, ни одного или все) и поменять их знак (т. е. поменять \(x \to (-x)\)). Какое наибольшее количество различных чисел может получиться после такой операции?

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

Первая строка содержит одно целое число \(t\) (\(1 \leq t \leq 100\)): количество наборов входных данных.

Далее следуют описания \(t\) наборов входных данных, по две строки на набор.

Первая строка содержит одно целое число \(n\) (\(1 \leq n \leq 100\)): количество чисел.

Вторая строка содержит \(n\) целых чисел \(a_1, a_2, \ldots, a_n\) (\(-100 \leq a_i \leq 100\)).

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

Для каждого набора входных данных выведите одно целое число: максимальное количество различных чисел, которое можно достичь, меняя знаки у чисел.

Примечание

В первом примере мы можем, например, изменить знаки у первого и последнего числа, получив массив \([-1, 1, 2, -2]\) с четырьмя различными значениями.

Во втором примере все три числа уже различны.

В третьем примере смена знаков ничего не меняет.


Примеры
Входные данныеВыходные данные
1 3
4
1 1 2 2
3
1 2 3
2
0 0
4
3
1

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

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