단순히 3명의 번호를 골라서 합이 0인지 확인해주면 되는 문제이다. 주어지는 number의 길이가 13까지밖에 안되서 삼중 for문을 돌려도 무관해보인다.
#include <string>
#include <vector>
using namespace std;
int solution(vector<int> number)
{
int answer = 0, n=number.size();
for(int i=0;i<n;i++)
for(int j=i+1;j<n;j++)
for(int k=j+1;k<n;k++)
if (number[i] + number[j] + number[k] == 0) answer++;
return answer;
}