Zero Sum
Есенен Турнир по Информатика 2011
Time Limit: 1.5s, Memory Limit: 64MiB
Ели най-неочаквано започна да води школа по информатика. Някои от състезанията, които правят там, са студентски (тоест ACM-стил) и се налага разпределянето на хората в отбори от по трима души. Сега Елеонора трябва да избере отбор, който да представи школата на Националната Студентска Олимпиада.

За съжаление, при нейните ученици се наблюдава следното явление: колкото по-добър е даден състезател, толкова по-зле се справя той при работа в екип и обратно, колкото по-добре се справя в екип, толкова по-лош състезател е той. А ACM е състезание, в което трябва от една страна отборът да се състои от добри състезатели, а от друга да работи добре в екип.

След проведените вътрешни контроли Ели има списък с това колко добър състезател е всеки от нейните N ученици – цяло число Ai. Ако числото е положително, състезателят е добър кодер, но не се справя особено добре в екип, докато ако е отрицателно, качествата му като програмист намаляват, но колаборацията му в екип се подобрява. Тя иска да състави отбора по такъв начин, че сумата на тримата участници да е нула. Така момичето си гарантира, че отборът ще е сравнително балансиран, както откъм състезателни качества, така и откъм работа в екип. Сега Ели се чуди колко различни конфигурации от състезатели може да избере в отбора.

Можем да обобщим задачата по следния начин: дадени са ви N числа A1, A2, ..., AN. Намерете колко (ненаредени) тройки с нулева сума има между тях.
Вход
На първия ред на стандартния вход ще бъде зададено цялото число N – броят ученици, които Ели има. На втория ред ще бъдат дадени N цели числа A1, A2, ..., AN, показващи качествата на всеки от тях.
Изход
На стандартния изход изведете едно единствено цяло число – броя възможни отбори, които тя може да сформира.
Ограничения
  • 1 ≤ N ≤ 10,000
  • -100,000,000 ≤ Ai ≤ 100,000,000
Примерен Вход Примерен Изход
10 2 -5 2 3 -4 7 -4 0 1 -6 6
Възможните тройки са: (2, -5, 3), (2, 2, -4), (2, 2, -4), (-5, 2, 3), (3, -4, 1), (3, -4, 1). Забележете, че двете -4 са различни хора и така тройките (2, 2, -4) са различни отбори.
Мрън!