2309-일곱난쟁이
int candidates[9];
// 합이 100일 때, 모든 키를 출력해야함.
void addHeight(int sum, int nextIndex, vector<int> arr) {
if(nextIndex > 9) {
return;
}
if(arr.size() == 7 && sum == 100) {
for(int i = 0; i<7; i++) {
cout<<arr[i]<<' ';
}
cout<<endl;
return;
}
arr.push_back(candidates[nextIndex]);
addHeight(sum + candidates[nextIndex], nextIndex + 1, arr);
arr.pop_back();
addHeight(sum, nextIndex + 1, arr);
}
int main(int argc, const char * argv[]) {
for(int i = 0; i<9; i++) {
cin>>candidates[i];
}
sort(candidates, candidates + 9);
vector <int> arr;
arr.push_back(candidates[0]);
addHeight(candidates[0], 1, arr);
arr.pop_back();
addHeight(0, 1, arr);
return 0;
}review
Last updated
Was this helpful?