C++ / 2751 / 수 정렬하기 2( 정렬 )

https://www.acmicpc.net/problem/2751

문제 요약

n개의 수가 주어졌을 때 이를 오른차순 해야합니다.

문제 풀이

1. n과 n개의 수를 백터로 입력 받습니다.

2. sort()로 정렬합니다.

주의할 점

출력할 때 endl을 사용하면 시간초과가 납니다.

해결방법으로 출력할때 endl 대신에 "\n"을 사용하였습니다.

endl은 출력할때 스트림에서 사용되는 버퍼를 매번 비우므로 \n보다 시간이 오래 걸리는데 이 때문에 시간초과가 났던 것 같습니다.

코드

#include <iostream>
#include <vector>
#include<algorithm>
using namespace std;

typedef long long ll;

int n, a;
vector<int> p;

int main()
{
	cin >> n;
	for (int i = 0; i < n; i++)
	{
		cin >> a;
		p.push_back(a);
	}

	sort(p.begin(), p.end());
	for (int i = 0; i < n; i++)
	{
		cout << p[i] << "\n";
	}



	return 0;
}

예제

5
5
4
3
2
1

결과

etc-image-0

'BAEKJOON > Sorting' 카테고리의 다른 글

C++ / 11651 / 좌표 정렬하기 2 ( 정렬 )  (0) 2025.01.11