그때 그때 끄적 2022. 8. 5. 16:10
반응형

입력의 개수가 많은 경우에는 단순히 input() 함수를 그대로 사용하지는 않는다.

파이썬의 기본 input() 함수는 동작 속도가 느려서 시간 초과로 오답 판정을 받을 수 있기 때문이다.

import sys

data = sys.stdin.readline()
# hello world
print(data)

hello world
# 줄 바꿈 공백 생김

data = sys.stdin.readline().rstrip()
print(data)
hello world


# ex
input = sys.stdin.readline
n, m = map(int, input().split())

### map
= 각 원소의 어떤 함수를 적용할지 설정할 수 있음
= map 사용후 바로 활용하는 경우에는 list()를 같이 적용해줘야함
그냥 사용 시 <map object at 0x00000271771B35E0>
readline()으로 입력하면 입력 후 엔터Enter가 줄 바꿈 기호가 입렵됨
rstrip()을 사용하면 공백 문자 제거

 

Python 3 와 PyPy3

간단한 코드상에서는 Python3가 메모리, 속도 측면에서 좋음

복잡한 코드(반복)을 사용하는 경우에서는 PyPy3

 

map() 함수

- "map 오브젝트" 를 반환

- 신경쓰고 싶지않다면 list()무조건 묶어서 사용하기

input_data = map(int, input().split())

print(input_data)

1 3 5 6 9 11 13 15 17 19
<map object at 0x000001F136725DC0>

# list화 없이 적용시킬려면 input data에 맞게 분할 할당
n, t = map(int, input().split())
print(n, t)

10 7
10 7

# 신경쓰지 않고 싶다면 그냥 list로 묶어주면 됨
input_data = list(map(int, input().split()))
반응형