코딩테스트 대비를 위해 도움이 될만한 문제 추천 블로그가 있어서 이 단계대로 코테를 준비합니다.

참조 사이트: http://covenant.tistory.com/224

 

코딩테스트 대비를 위한 백준 문제 추천

코딩테스트 대비를 위한 백준 문제 추천 끝 없는 훈련만이 실전에서 흐트럼없이 정답을 향해서 움직일 수 있습니다. (Photo by Specna Arms on Unsplash) 작년 한 해 수많은 코딩테스트를 직접 경험하고

covenant.tistory.com

Part 1 준비운동 - 최소, 최대 (백준 10818)

문제 출처: https://www.acmicpc.net/problem/10818

 

10818번: 최소, 최대

첫째 줄에 정수의 개수 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 N개의 정수를 공백으로 구분해서 주어진다. 모든 정수는 -1,000,000보다 크거나 같고, 1,000,000보다 작거나 같은 정수이다.

www.acmicpc.net

 

풀이

벡터를 이용해 간단히 풀었습니다. 시간이 꽤 걸리는 것 같아서 시간을 줄여주기 위해 8,9행 코드를 추가하고 c++특성상 개행 처리를 위한 'endl' 사용이 시간이 많이 소요되므로 '\n'으로 바꿔주었습니다.

굳이 vector or 배열을 사용하지 않고 구현하려면 간단하게 max변수 -1000001, min 변수 1000001을 이용하여 입력받는 값마다 min,max value값을 얻어내면 됩니다.

 

코드

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include<iostream>
#include<algorithm>
#include<vector>
using namespace std;
 
int main()
{
    cin.tie(0);
    cin.sync_with_stdio(false);
    int n,num;
    vector<int>v;
    cin >> n;
    for (int i = 0; i < n; i++) {
        cin >> num;
        v.push_back(num);
    }
    sort(v.begin(), v.end());
    cout << v[0<< " " << v[n - 1<< '\n';
    return 0;
}
cs

 

결과

 

+ Recent posts