알고리즘

[파이썬] 단계별 백준 문제 풀기 - 2751 정렬 (수 정렬하기 2)

햄❤️ 2021. 3. 12. 19:58
반응형

문제링크

 

2751번: 수 정렬하기 2

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

www.acmicpc.net

 

문제

N개의 수가 주어졌을 때, 이를 오름차순으로 정렬하는 프로그램을 작성하시오.

입력

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

출력

첫째 줄부터 N개의 줄에 오름차순으로 정렬한 결과를 한 줄에 하나씩 출력한다.

 


<<소스코드>>

import sys
n = int(sys.stdin.readline())
arr = []

for i in range(n):
    line = int(sys.stdin.readline())
    arr.append(line)
arr.sort()

for j in arr:
    print(j)

 

<<결과값>>

5
5
4
3
2
1

1
2
3
4
5

한줄기 빛 같은 문제였다... 오름차순 정렬 sort() 함수를 이용했다. 

 

[sort와 sorted의 차이]

- sort() : 원본 리스트 자체를 그 자리에서 정렬하고 None을 반환

          : 리스트형의 메소드

          : 쓰일때 list.sort()

 

- sorted() : 새로운 정렬된 목록을 반환하며, 원래 목록은 영향을 받지 않음. 새로운 정렬된 객체를 원할때 사용

              : 리스트, 튜플, 딕셔너리, 문자열 등 모든 iterable에 동작

              : 쓰일때 sorted(list) 

728x90
반응형