정답 코드
#include <bits/stdc++.h>
using namespace std;
int elp[10];
vector<int> v; //index들이 들어있는 벡터
/* print answer */
void printVec(vector<int> v) {
for(int j=0; j<v.size(); j++) {
cout<<elp[v[j]]<<'\n';
}
}
/* sum all vector */
int sumVec(vector<int> v) {
int sum=0;
for(int i=0; i<7; i++) {
sum+=elp[v[i]];
}
return sum;
}
/* combination */
void combi(int start, vector<int> v) {
if(v.size()==7) {
if(sumVec(v) == 100) { //if sum is 100
printVec(v); //print answer
return;
}
}
for(int i=start+1; i<9; i++) {
v.push_back(i);
combi(i, v);
v.pop_back();
}
}
int main() {
for(int i=0; i<9; i++) {
cin>>elp[i];
}
combi(-1, v);
return 0;
}