[내코드]
답 정확히 나오는데 이거 뭐가 문젠지 모르겠음.
인터넷에 있는 답 돌려도 안될때가 있음;;
#include <iostream>
#include <algorithm>
using namespace std;
const int N = 9;
const int target = 100;
int main()
{
int arr[9];
int iSum = 0;
for (int i = 0; i < N; i++)
{
cin >> arr[i];
}
for (int i = 0; i < N; i++)
{
iSum += arr[i];
}
for (int i = 0; i < N-1; i++)
{
for (int j = i + 1; j < N; j++)
{
if ((iSum - (arr[i] + arr[j])) == target)
{
arr[i] = 0;//이부분 빼버리기위함
arr[j] = 0;//이부분 빼버리기위함
}
}
}
sort(arr, arr + N);
for (int i = 2; i < N; i++)
{
cout << arr[i] << endl;
}
return 0;
}
암튼 이 문제에서 ->
1.이중포문 돌리는데 다음번 포문을 i+1로 설정하고,
2.이전포문을 N-1까지만하고
3.원하는 부분 필터링 하기 위해서 해당 배열 0으로 만든다.
완전탐색