차밍이

[Python] 백준 2751번 수 정렬하기 2 본문

파이썬/알고리즘

[Python] 백준 2751번 수 정렬하기 2

2020. 2. 3. 20:07
반응형

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

수 정렬하기 2 성공

시간 제한 메모리 제한 제출 정답 맞은 사람 정답 비율
2 초 256 MB 64293 18620 11758 31.961%

문제

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

소스코드

import sys
n = int(input())
l = []
for i in range(n):
    l.append(int(sys.stdin.readline()))
for i in sorted(l):
    sys.stdout.write(str(i)+'\n')

결과출력

해설

  • 파이썬의 기본 정렬 함수가 O(nlog(n))으로 잘 구성되어있어서 굳이 더 좋은 정렬 방법을 사용할 필요는 없다고 생각하고 문제를 풀었습니다.
  • 이번 문제를 해결하는데 있어서 시간이 가장 중요하고 생각해서 input()print()함수를 사용하지 않고 import sys를 통해서 system input과 system output을 사용하는 방법에 대해서 공부하고 적용하였더니 문제가 해결되었습니다.
반응형

관련된 글 보기

Comments