모든 경우의 수를 반복문을 통해서 다 비교하면 복잡도 N^2가 나오는데 N의 범위가 2 ≤ n ≤ 100 이라서 시간이 충분하다.
#include<iostream>
#include<vector>
using namespace std;
int main(int argc, char** argv)
{
int N, value;
vector<int> arr;
cin >> N;
for (int i = 0; i < N; i++){
cin >> value;
arr.push_back(value);
}
int MAX = -100000;
for (int i = 0; i < N - 1; i++){
for (int k = i + 1; k < N; k++){
MAX = max(arr[i] * arr[k], MAX);
}
}
cout << MAX << endl;
return 0;
}
모든 경우의 수를 다 곱해서 가장 큰 값이 나올 때를 찾아서 출력하면 되는 아주 쉬운 문제이다.
'C++' 카테고리의 다른 글
[C++, 코딩테스트] Softeer : 출퇴근길 with DFS (0) | 2024.02.02 |
---|---|
[C++, 코딩테스트] Softeer : GBC (1) | 2024.02.02 |
[C++, 코딩테스트] Softeer : 지도 자동 구축 (0) | 2024.02.01 |
[C++, 코딩테스트] Softeer : 스마트 물류 with 그리디 (1) | 2024.01.30 |
[C++, 코딩테스트] Softeer : 동계 테스트 시점 예측 with DFS (0) | 2024.01.30 |