sys.maxsize

이지훈·2021년 9월 22일
0

백준 이분탐색 문제를 풀다가 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)으로 이해하기 쉽게 작성할 수 있었다.

profile
꾸준하게 🐌

0개의 댓글