PS/백준
백준 / 정렬 / 2751번 / 수 정렬하기 2 / C++
KimMinJun
2021. 9. 17. 15:15
문제
N개의 수가 주어졌을 때, 이를 오름차순으로 정렬하는 프로그램을 작성하시오.
입력
첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 수가 주어진다.
이 수는 절댓값이 1,000,000보다 작거나 같은 정수이다. 수는 중복되지 않는다.
출력
첫째 줄부터 N개의 줄에 오름차순으로 정렬한 결과를 한 줄에 하나씩 출력한다.
예제 입력 1
5
5
4
3
2
1
예제 출력 1
1
2
3
4
5
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main() {
ios_base::sync_with_stdio(false);
cin.tie(NULL);
vector<int> v;
int n;
cin >> n;
while(n--) {
int num;
cin >> num;
v.push_back(num);
}
sort(v.begin(), v.end());
for(const auto &element : v) {
cout << element << '\n';
}
return 0;
}
algorithm 헤더의 sort함수를 이용했다.
sort함수는 퀵 정렬이라고 한다.
퀵 정렬 외에도 버블정렬, 합병정렬, 등등... 많지만 이미 구현되어있는것을 사용하기에도 시간초과가 뜨지 않아서
사용했다.
특히 어려운 부분은 없었다.