Всем известно, что противоположности притягиваются. Брачное агентство «Паросочетание» работает по этому признаку. Каждого зарегистрированного клиента сотрудники «Паросочетания» классифицировали по его интересам, i-ому клиенту было назначено число ti ( - 10 ≤ ti ≤ 10). Конечно, одно и то же число может быть назначено более чем одному клиенту.
В качестве рекламы «Паросочетание» хочет опубликовать количество пар противоположных клиентов, то есть таких, у которых значение параметра t противоположно. Клиент может входить в пару произвольное количество раз. Помогите агентству и напишите программу, которая по заданной последовательности t1, t2, ..., tn найдет искомое количество. Например, если t = (1, - 1, 1, - 1), то любые два элемента ti и tj образуют пару, если i и j имеют разную четность. Следовательно, в этом случае искомое количество равно 4.
Конечно, клиент не может образовывать пару с самим собой.
Выходные данные
Выведите количество пар клиентов с противоположными t. Числом, противоположным для x является число - x (0 противоположен сам себе). Пары, отличающиеся только порядком клиентов, считаются одинаковыми.
Учтите, что ответ на задачу может быть довольно большим, поэтому необходимо использовать 64-битный целый тип для вычислений. Пожалуйста, не используйте спецификатор %lld для чтения или записи 64-битных чисел на С++. Рекомендуется использовать потоки cin, cout или спецификатор %I64d.
Примечание
В первом примере пары противоположных клиентов: (1,2), (1,5) и (3,4).
Во втором примере любая пара клиентов — противоположна.
Примеры
| № | Входные данные | Выходные данные |
|
1
|
5 -3 3 0 0 3
|
3
|
|
2
|
3 0 0 0
|
3
|