시간 제한
메모리 제한
시간 제한
4초
메모리 제한
128 MB
Elly는 프로그래밍 대회를 준비하는 학생들을 가르치게 되었다. 이 대회에는 정확히 3명으로 이루어진 팀만 참가할 수 있다. 그런데 학생들은 코딩 실력이 좋을수록 팀워크가 떨어지고, 팀워크가 좋을수록 코딩 실력이 떨어지는 경향이 있다. 이 대회에서는 코딩 실력과 팀워크가 모두 중요하다.
Elly는 자신이 가르칠 수 있는 모든 학생의 코딩 실력을 알고 있다. 각 학생의 코딩 실력 A_i는 -10000 이상 10000 이하의 정수이다. Elly는 균형 잡힌 팀을 만들기 위해, 세 학생의 코딩 실력 합이 정확히 0이 되는 팀을 고르려고 한다.
N명의 학생들의 코딩 실력이 주어질 때, 합이 0이 되는 3인조 팀을 만들 수 있는 경우의 수를 구하라. 같은 코딩 실력 값을 가진 학생도 서로 다른 사람이므로, 선택된 학생의 조합을 기준으로 센다.
입력은 표준 입력으로 주어진다.
첫 번째 줄에 학생의 수 N이 주어진다. 두 번째 줄에 학생들의 코딩 실력 A_i가 N개 주어진다.
Elly가 고를 수 있는 팀의 수를 하나의 정수로 출력한다.
공개 테스트 케이스에서 가능한 참가자 그룹은 (2, -5, 3), (2, 2, -4), (2, 2, -4), (-5, 2, 3), (3, -4, 1), (3, -4, 1)이다.
두 개의 -4는 서로 다른 학생을 나타내므로, (2, 2, -4)와 (3, -4, 1)은 각각 두 번씩 세어진다.