https://www.acmicpc.net/problem/2309
9개 중 2개를 제외했을 때 100인 경우를 찾아내면 됩니다.
#include <iostream>
#include <algorithm>
using namespace std;
int nums[9];
int sum;
int main()
{
ios::sync_with_stdio(0), cin.tie(0);
for (int &num : nums)
{
cin >> num;
sum += num;
}
sort(nums, nums + 9);
for (int i = 0; i < 9; ++i)
{
for (int j = i + 1; j < 9; ++j)
{
if (sum - nums[i] - nums[j] == 100)
{
for (int k = 0; k < 9; ++k)
{
if (k == i || k == j)
{
continue;
}
cout << nums[k] << "\n";
}
return 0;
}
}
}
return 0;
}
미리 정렬을 해두고 탐색을 해두는 편이 추후 출력할 때 편합니다.
2중 for문으로 제외할 조합을 찾아낸 뒤 제외했을 때 100인지 확인하고 100이면 나머지 7개의 숫자를 출력해 주고 끝내면 됩니다.