티스토리 뷰

파이썬에서 데이터를 입력받을 때 input()을 이용한다. 


input()을 이용하면 프롬프트를 이용한 입력을 받을 수 있고, 형변환이 되는 이점이 있다. 

하지만 대량의 데이터를 반복적으로 입력받을 때 input()을 이용하지 않고, sys.stdin.readline() 을 이용하면 성능이 향상된다. 


백준 1931 문제를 같은 코드로 입력 함수만 다르게 사용한 결과 아래와 같이 10배의 속도 향상(3928MS -> 336MS)을 얻을 수 있었다. 


8954131

h

1931맞았습니다!!50344 KB336 MSPython 3 수정491 B41분 전
8953912

h

1931맞았습니다!!50344 KB3928 MSPython 3 수정508 B1시간 전

자바에서 Scanner를 이용한 입력보다 BufferedReader 를 이용한 입력이 빠른것처럼 

파이썬도 input()을 이용하는 것보다 sys.stdin.readline()을 이용하는 것이 훨씬 빠르다. 



반응형
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2025/01   »
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 27 28 29 30 31
글 보관함