몽상실현개발주의

[BOJ] 2751 / 수 정렬하기 2 / Python 파이썬 본문

Algorithm PS/BOJ

[BOJ] 2751 / 수 정렬하기 2 / Python 파이썬

migrationArc 2021. 5. 20. 11:09

[BOJ] 2751 / 수 정렬하기 2 / Python 파이썬

[BOJ] 2751 / 수 정렬하기 2 / Python 파이썬

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

 

2751번: 수 정렬하기 2

첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 숫자가 주어진다. 이 수는 절댓값이 1,000,000보다 작거나 같은 정수이다. 수는 중복되지 않는다.

www.acmicpc.net

 

풀이

최대 입력이 1000000, 제한시간이 2초인 정렬 문제이다.

O(N^2) 인 삽입정렬이나 버블정렬이 아닌 O(NlogN)인 고급 정렬로 풀어야 한다.

 

하지만, Python 배열 정렬 내부 함수인 sort() 가 O(NlogN) 이므로, 정렬을 직접 구현하지 않고 사용하였다.

 

 

import sys

N = int(sys.stdin.readline())

nums = []

for _ in range(N):
    nums.append(int(sys.stdin.readline()))
    
nums.sort()

for i in range(N):
    print(nums[i])

 

 

 


참고 블로그

https://leedakyeong.tistory.com/entry/%EB%B0%B1%EC%A4%80-2751%EB%B2%88-%EC%88%98-%EC%A0%95%EB%A0%AC%ED%95%98%EA%B8%B0-2-in-python-%ED%8C%8C%EC%9D%B4%EC%8D%AC

 

[백준] 2751번 : 수 정렬하기 2 in python 파이썬 :: merge sort

파이썬으로 백준풀기 :: 2751번 수 정렬하기 2 https://www.acmicpc.net/problem/2751 코드 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 v = [int(input()) for i in range(int..

leedakyeong.tistory.com

https://chancoding.tistory.com/19

 

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

수 정렬하기 2 성공 시간 제한 메모리 제한 제출 정답 맞은 사람 정답 비율 2 초 256 MB 64293 18620 11758 31.961% 문제 N개의 수가 주어졌을 때, 이를 오름차순으로 정렬하는 프로그램을 작성하시오. 입력

chancoding.tistory.com

 

Comments