728x90
반응형
문제 설명
N개의 수가 주어졌을 때, 이를 오름차순으로 정렬하는 프로그램을 작성하시오.
문제 링크
https://www.acmicpc.net/problem/2751
2751번: 수 정렬하기 2
첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 수가 주어진다. 이 수는 절댓값이 1,000,000보다 작거나 같은 정수이다. 수는 중복되지 않는다.
www.acmicpc.net
입출력 예시
프로그램 코드
import sys #입력 위한 sys 라이브러리
n = int(sys.stdin.readline()) #n 입력 받기
li = [] #빈 리스트 만들기
for i in range(n): #숫자 n개 입력 받아서 리스트에 저장
li.append(int(sys.stdin.readline()))
for i in sorted(li): #리스트 정렬 후 출력
print(i)
프로그램 코드 설명
처음에 n = int(input()) 이런 식으로 input() 함수를 이용하여 이 문제를 해결하려고 했는데,
시간 초과가 나와서 실행 시간을 줄이기 위해서 sys 라이브러리에서 제공하는
sys.stdin.readline() 함수를 이용하여 정수를 입력받았습니다.그 후에는 빈 리스트를 만들고n개의 숫자를 입력받아서 리스트에 저장한 후파이썬에서 제공하는 정렬 함수인 sorted() 함수를 이용하여 리스트를 정렬하여 출력해줬습니다.파이썬 리스트 함수 중 sort() 함수를 사용해도 될 것 같습니다.
728x90
반응형
'프로그래밍 > Python' 카테고리의 다른 글
[파이썬] 백준 2609번 최대공약수와 최소공배수 문제 풀이 python (0) | 2024.02.06 |
---|---|
[파이썬] 백준 2292번 벌집 문제 풀이 python (0) | 2024.02.06 |
[파이썬] 백준 2231번 분해합 문제 풀이 python (0) | 2024.02.06 |
[파이썬] 백준 2164번 카드2 문제 풀이 python (1) | 2024.02.06 |
[파이썬] 백준 2108번 통계학 문제 풀이 python (0) | 2024.02.05 |