😁 빅데이터 문제 풀기 & Study/- BAEKJOON 문제

[2750번] 수 정렬하기 / python3 (feat. 어려운 문제 이후는)

또방91 2021. 11. 9. 11:39
728x90

문제 링크: https://www.acmicpc.net/problem/2750

 

2750번: 수 정렬하기

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

www.acmicpc.net

 

몇일간 어려운 BFS와 DFS를 해서 그런 가 수정렬 문제는 쉬웠당🤗


❓ 정답은 ??(3가지 버전)

ver. ①: input( )와 print( ) 사용
ver. ②: sys.stdin.readline( )와 print( ) 사용
ver. ③: sys.stdin.readline( )와 sys.stdout.write( ) 사용

ver. ①: input( )와 print( ) 사용

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# 첫째 줄 개수 n
# 둘째줄부터 n개의 줄 수 주어짐
# 출력 오름차순으로 하나씩 출력
 
 
n=int(input())
numlist=[]
for _ in range(n):
    num=int(input())
    numlist.append(num)
numlist.sort()
 
for i in numlist:
    print(i)
cs

ver. ②: sys.stdin.readline( )와 print( ) 사용

1
2
3
4
5
6
7
8
9
10
11
import sys
 
n=int(sys.stdin.readline())
numlist=[]
for _ in range(n):
    num=int(sys.stdin.readline())
    numlist.append(num)
numlist.sort()
 
for i in numlist:
    print(i)
cs

ver. ③: sys.stdin.readline( )와 sys.stdout.write( ) 사용

1
2
3
4
5
6
7
8
9
10
11
import sys
 
n=int(sys.stdin.readline())
numlist=[]
for _ in range(n):
    num=int(sys.stdin.readline())
    numlist.append(num)
numlist.sort()
 
for i in numlist:
    sys.stdout.write(str(i)+'\n')
cs

💯 풀이 과정

이제 input( )대신에 sys 모듈을 써보려고도하고~🌻

(쓰고 안쓰고 차이가 시간 차이가 많이 나더라)

numlist를 만들고 하나씩 append 한 다음

sort하고 하나씩 print !

 

print를 sys.stdout.write( )로 써봤는데 코드길이만 길어지고, 시간은 동일했다.

 


😎오늘의 한줄평: 역시 DFS,BFS 어려운 일을 당한 후 모든 일들이 조금 쉬워 보인달까. 인생의 진리

728x90