C. Полоска 2
ограничение по времени на тест
1 second
ограничение по памяти на тест
64 megabytes
ввод
stdin
вывод
stdout

Однажды Вася взял бумажную полоску из n клеток (высота полоски равна 1 клетке) и в каждой клетке написал целое число, возможно отрицательное. Ему стало интересно, сколько существует способов разрезать полоску на три части так, что суммы чисел в каждой из частей равны между собой, и в каждой части содержится целое положительное число клеток. Помогите Васе решить эту задачу.

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

В первой строке входных данных содержится целое число n (1 ≤ n ≤ 105) — количество клеток в полоске. Во второй строке содержится n чисел, разделенных пробелами — числа, записанные в клетках полоски. Эти числа целые и не превосходят по модулю 10000.

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

Выведите число способов разрезать полоску на три непустые части так, что суммы чисел в каждой из частей равны между собой. Не забудьте, что разрезать полоску разрешается только по границам клеток.

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