250x250
반응형
Notice
Recent Posts
Recent Comments
Link
N
(SWEA c++)5948. 새샘이의 7-3-5 게임 본문
728x90
반응형
7개의 숫자 중 3개를 뽑아서 더한 값에서 5번째로 큰 수를 구해야 한다.
숫자는 7개이기 때문에 3중 for문을 통해 3개의 수를 다 더해도 시간은 초과되지 않는다.
3개의 수를 더해서 ans 벡터에 넣어주는데, 중복값은 제거하고 넣어야 한다.
중복값을 체크하기 위한 bool형 벡터를 선언해주고, 초기화를 꼭 하도록 하자.
초기화를 안했더니 계속 오류가 떴다...
마지막에는 ans[4]를 출력하면 5번째로 큰 수를 구할 수 있다.
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main(void)
{
ios::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
int t;
cin >> t;
for(int tc = 1; tc <= t; tc++)
{
vector<int> v, ans;
vector<bool> arr(301, false);
for(int i = 0; i < 7; i++)
{
int tmp;
cin >> tmp;
v.push_back(tmp);
}
//sort(v.begin(), v.end(), greater<int>());
for(int i = 0; i < 7; i++)
{
for(int j = i + 1; j < 7; j++)
{
for(int k = j + 1; k < 7; k++)
{
int num = v[i] + v[j] + v[k];
if(!arr[num])
{
ans.push_back(num);
arr[num] = true;
}
}
}
}
sort(ans.begin(), ans.end(), greater<int>());
cout << "#" << tc << " " << ans[4] << endl;
}
return 0;
}
728x90
반응형
'SW Expert Academy' 카테고리의 다른 글
(SWEA c++)6019. 기차 사이의 파리 (0) | 2020.11.18 |
---|---|
(SWEA c++)5986. 새샘이와 세 소수 (0) | 2020.11.16 |
(SWEA c++)5789. 현주의 상자 바꾸기 (0) | 2020.11.16 |
(SWEA c++)5688. 세제곱근을 찾아라 (0) | 2020.11.16 |
(SWEA c++)5549. 홀수일까 짝수일까 (0) | 2020.11.16 |