21. Vector-Sort
[ 난이도: Easy | 분야: STL ]
1. 내용 정리
N개의 정수가 주어진다고 가정하자. N개의 정수들을 정렬하고 정렬한 순서대로 출력해라.
N개의 정수들을 벡터에 저장해라. 벡터는 가변적인 크기를 가지는 배열이다.
정의
vector<int> v;비어있는 정수를 담을 수 있는 벡터를 생성한다.
크기
int size = v.size();
벡터에 정수 넣기
v.push_back(x);x는 정수다. 이 이후에 벡터의 크기가 1 증가한다.
벡터의 마지막 값을 빼니기
v.pop_back();이 이후에 벡터의 크기가 1 줄어든다.
벡터 정렬
sort(v.begin(), v.end());벡터의 모든 값을 정렬한다.
2. 과제
입력 형식
첫 번째 줄은 정수의 개수를 표현하는 N을 포함하고 있다.
다음 줄은 N개의 정수를 포함한다.
제약 사항
N은 1보다 크거나 같고 10^5보다 작거나 같다.
V_i는 1보다 크거나 같고 10^9보다 작거나 같다.(V_i는 벡터 내의 i번째 정수를 나타낸다.)
출력 형식
순서대로 정렬된 정수들을 단일 줄에 공백으로 구분하여 출력한다.
입력 예시
5
1 6 10 8 4
출력 예시
1 4 6 8 10
문제
#include <cmath>
#include <cstdio>
#include <vector>
#include <iostream>
#include <algorithm>
using namespace std;
int main() {
    /* Enter your code here. Read input from STDIN. Print output to STDOUT */   
    return 0;
}더보기
정답
#include <cmath>
#include <cstdio>
#include <vector>
#include <iostream>
#include <algorithm>
using namespace std;
int main() {
    /* Enter your code here. Read input from STDIN. Print output to STDOUT */
    int N; // Number of integers
    cin >> N;
    vector<int> v; // Storage
    
    // Push back into vector
    for(int i = 0; i < N; i++) {
        int temp;
        cin >> temp;
        v.push_back(temp);
    }
    // Sorted
    sort(v.begin(),v.end());
    // print out
    for(int i = 0; i < N; i++) {
        cout << v[i] << " ";
    }
    
    return 0;
}
©️ Hackerrank. All Rights Reserved.
'프로그래밍 언어 > C, C++' 카테고리의 다른 글
| [Hackerrank] 23. Lower-Bound STL (0) | 2024.02.20 | 
|---|---|
| [Hackerrank] 22. Vector-Erase (0) | 2024.02.19 | 
| [Hackerrank] 20. Abstract Classes - Polymorphism (0) | 2024.02.17 | 
| [Hackerrank] 19. Virtual Functions (0) | 2024.02.16 | 
| [Hackerrank] 18. Exceptional Server (2) | 2024.02.14 |