반응형
<문제링크>https://www.acmicpc.net/problem/2751
<문제>
N개의 수가 주어졌을 때, 이를 오름차순으로 정렬하는 프로그램을 작성하시오.
<입력>
첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 숫자가 주어진다. 이 수는 절대값이 1,000,000보다 작거나 같은 정수이다. 수는 중복되지 않는다.
<출력>
첫째 줄부터 N개의 줄에 오름차순으로 정렬한 결과를 한 줄에 하나씩 출력한다.
<예제입력>
5 5 4 3 2 1
<예제출력>
1 2 3 4 5
이문제를 풀때 가장 힘들었던 것은, 시간초과가 걸렸던것이다.
처음에 버블정렬을 이용하려고 하였으나, 시간초과가 걸려서 sort정렬로 바꾸게 되었다.
sort정렬을 쓸때에는 #include<algorithm>과 using namespace std;를 써주고 써야한다.
또한 sort를 썼음에도 시간초과가 떳고,
해결방법으로는
ios::sync_with_stdio(false);
"\n"
이렇게 두가지를 바꾸었다. endl이 생각보다 시간초과가 많이되나보다...
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | #include<iostream> #include<algorithm> using namespace std; int main() { ios::sync_with_stdio(false); int n; cin>>n; int *arr=new int[n]; for(int i=0;i<n;i++) { cin>>arr[i]; } sort(arr,arr+n); for(int j=0;j<n;j++) { cout<<arr[j]<<"\n"; } } | cs |
반응형
'알고리즘 > 알고리즘(c++)' 카테고리의 다른 글
9020 왜런타임오류가날까!!!!!!! (0) | 2018.08.29 |
---|---|
백준문제[2775번]_부녀회장이 될테야 (1) | 2018.08.28 |
백준문제[4344]_평균은 넘겠지 (0) | 2018.08.27 |
백준문제[1152]_단어의 개수 (0) | 2018.08.27 |
백준문제[1205]_등수 구하기 (0) | 2018.08.27 |