백준 이분탐색 문제를 풀다가 sys.maxsize가 뭔지 의문이 생겼다.
import sys
max_num = sys.maxsize
min_num = -sys.maxsize
print(max_num, min_num)
다음과 같이 인수의 최대값과 최소값을 출력할 수 있는 것을 알 수 있다.
근데 이걸 알고리즘에 적용을 하고 있었다. 😵💫
import sys
n, m = map(int, sys.stdin.readline().rstrip().split())
num = list(map(int, sys.stdin.readline().rstrip().split()))
start, end = max(num), sum(num)
ans = sys.maxsize
여기서 sys.maxsize가 뭔지 한참을 헤맸다.
임의의 큰 값을 정하고 최소, 최대 범위를 정한다?
한참 삽질 후에, sys.maxsize = sum(num) 이라는 것을 알고는 이해했다.
만약 num = [1,2,3,4,5,6,7,8,9] 이라면
sum(num) = 45로 지정해 놓고 계산을 하는 것이다.
import sys
n, m = map(int, sys.stdin.readline().rstrip().split())
num = list(map(int, sys.stdin.readline().rstrip().split()))
start, end = max(num), sum(num)
ans = sum(num)
따라서 위와 같이 ans = sum(num)으로 이해하기 쉽게 작성할 수 있었다.