반응형
문제
풀이
무난한 브루트 포스 문제이다.
아홉 난쟁이 중에 두 난쟁이는 합에 포함이 안 되고, 100이 되는 경우가 무조건 존재하므로
루프를 돌면서 포함이 안되는 두 난쟁이를 찾고 나머지 난쟁이를 벡터 result에 push해준다.
소스 코드
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
|
#include<iostream>
#include<algorithm>
#include<vector>
using namespace std;
vector<int> v;
vector<int> result;
int heigth;
int heigthSum = 0;
void Solution()
{
for (int i = 0; i < 8; i++)
{
for (int j = i + 1; j < 9; j++)
{
int sum = heigthSum - v[i] - v[j];
// 합이 100이면 두 난쟁이 제외하고 result에 push
if (sum == 100)
{
for (int k = 0; k < 9; k++)
{
if (k == i || k == j)
continue;
result.push_back(v[k]);
}
return;
}
}
}
}
int main()
{
for (int i = 0; i < 9; i++)
{
cin >> heigth;
heigthSum += heigth;
v.push_back(heigth);
}
Solution();
sort(result.begin(), result.end());
for (int num : result)
{
cout << num << '\n';
}
return 0;
}
|
cs |
반응형
'알고리즘 > 백준' 카테고리의 다른 글
[백준 15654] N과 M (5) C++ (0) | 2022.05.02 |
---|---|
[백준 13335] 트럭 C++ (0) | 2022.04.30 |
[백준 1065] 한수 C++ (0) | 2022.03.29 |
[백준 10816] 숫자 카드 2 (0) | 2022.02.12 |
[백준 1092] 배 C++ (0) | 2021.12.11 |