permutation을 사용해 모든 순열을 구한 풀이도 존재하지만 완전탐색과 큰 차이가 없는것 같다.
#include <string>
#include <vector>
#include <iostream>
using namespace std;
bool sum_is_zero(int a, int b, int c){
if(a + b + c == 0){
return true;
}
else{
return false;
}
}
int solution(vector<int> number) {
int answer = 0;
int i, j, k, N = number.size();
//1. 완전탐색
for(i = 0; i < N - 2; i++){
for(j = i + 1; j < N - 1; j++){
for(k = j + 1; k < N; k++){
if(sum_is_zero(number[i], number[j], number[k])){
answer++;
cout << "(" << number[i] << ", " << number[j] << ", " << number[k] << ")\n";
}
}
}
}
return answer;
}