Just Fighting
[백준] 수 정렬하기 2 본문
728x90
https://www.acmicpc.net/problem/2751
2751번: 수 정렬하기 2
첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 수가 주어진다. 이 수는 절댓값이 1,000,000보다 작거나 같은 정수이다. 수는 중복되지 않는다.
www.acmicpc.net
< 문제 설명 >
수 정렬하기
N은 1부터 1,000,000이고, N개의 숫자는 모두 절대값이 1,000,000보다 같거나 작음.
< 문제 풀이 >
sort()가 O(nlogn)이라는 것을 알았다,,
그리고 input()으로 써서 틀린걸 한참을 돌아갈뻔했다.
잊지말자 sys.stdin.readline()
import sys
n = int(input())
num = []
for i in range(n):
num.append(int(sys.stdin.readline())) # 입력은 input()보다 이게 빠름
num.sort() # sort()는 O(nlogn)
for i in num:
print(i)
< 문제 풀이 2 >
출력할 때에도 시간을 더욱 줄일 수 있다.
sys.stdout.write()를 사용하면 된다.
import sys
n = int(input())
num = []
for i in range(n):
num.append(int(sys.stdin.readline()))
num.sort()
for i in num:
sys.stdout.write(str(i)+'\n')
시간문제가 난 제일 어려운 것 같다,,
728x90
'Algorithm > 코딩테스트 연습' 카테고리의 다른 글
[프로그래머스] 예산 (0) | 2022.06.15 |
---|---|
[프로그래머스] 소수 만들기 (0) | 2022.06.15 |
[백준] 수 정렬하기 3 (0) | 2022.06.06 |
[백준] 뒤집힌 덧셈 (0) | 2022.06.02 |
[백준] 운동 (0) | 2022.05.26 |
Comments