우당탕탕 개발일지
[알고리즘 문제 꿀팁] 입력값 간단하게 받는 방법 본문
맨날 input(), input().split()만 쓰다가,
뭔가 더 간편하고 속도도 빠른 방법은 없을지 찾아보았다.
[상황 1] 한 줄에 여러 값을 int타입으로 받고, 이를 리스트로 저장하는 상황
- 사용할 함수: input(), split(), map(), list()
n = list(map(int, input().split()))
n
# [3, 6, 9, 12, 15]
[상황 2] 여러 줄에 걸쳐 여러 값을 int타입으로 받고, 이를 리스트로 저장하는 상황
- import sys
- sys.stdin.read().splitlines()로 줄별로 입력값을 읽어온다.
- 그리고 그 값을 리스트에 넣는다.
import sys
data = sys.stdin.read().splitlines()
[추가] input() 대신에 sys.stdin.readline() 사용하면 속도가 더 빠름
반복문으로 여러 줄을 입력받는 상황에서는 sys.stdin.readline()을 사용해야 시간초과가 발생하지 않는다.
'알고리즘' 카테고리의 다른 글
[DFS/BFS] 백준 1260번 DBS와 BFS(Python 파이썬) (0) | 2023.11.02 |
---|---|
[그리디] 백준 2217번 로프(Python 파이썬) (1) | 2023.11.01 |
[BFS] 이것이 코딩테스트다 (1) | 2023.10.30 |
[DFS] 이것이 코딩테스트다 (0) | 2023.10.30 |
[알고리즘] 백준 2828번 사과 담기 문제 (0) | 2023.10.02 |