알고리즘을 풀다보면 여러 값을 입력 받는데 그 방식이 매우 다양해서 확실하게 한 번 정리해보려고 한다.
파이썬에서 어떤 값을 입력 받을 때에는 input()을 사용하는데 기본이 문자열로 저장되기 때문에 숫자나 실수 등 다른 값으로 입력받고자 할 때는 int(input()) 등 형변환을 해줘야한다.
파이썬에서 여러 개의 값을 한 번에 입력 받고 싶을 때는 split() 함수를 사용한다.
a, b = intput().split()
s_list = [input() for _ in range(n)]
: 문자열이 아닌 다른 값을 입력 받을 때에는 map을 사용해서 형변환해준다
a, b = map(int, intput().split())
map 함수란?
: 리스트의 요소를 지정된 함수로 처리하는 것으로 일반적으로 여러 데이터를 일괄적으로 다른 형태를 바꾸고자할 때 사용한다.
-> map (function, iterable) 의 형식을 가진다.
+) 알고리즘을 풀 때 첫 줄에 테스트 케이스의 개수를 입력하고 그 다음줄부터 다른 값들을 입력하는 경우가 많은데 이 때는 일반적으로 아래와 같이 입력문을 작성하면 된다.
n = int(input()) # 입력받는 테스트케이스의 개수
for _ in range(n):
a, b = map(int,sys.stdin.readline().split())
: 1차원 배열
a = list(map(int, intput().split()))
: 2차원 배열 -> 엔터를 기준으로 한 줄씩 배열로 저장
b = list(map(int, input())) for _ in range(n)
추가로 알고리즘을 풀다가 헷갈리는 입력 방식이 있다면 작성하도록 하겠다!!