공부 기록장

임의의 최대값 최소값 본문

코딩 테스트/정리 및 복습

임의의 최대값 최소값

빛나무 2024. 3. 22. 09:45

코딩 테스트 문제 풀이 시 최소값과 최대값을 설정해야 하는 경우가 종종 있다.

문제에서 주어진 최대 범위를 활용해 설정해도 되지만

무한수로 설정하기도 한다.

 

예를 들면, 최단 경로 문제에서 도달할 수 없는 노드에 대한 거리를 설정할 때 무한(INF)으로 설정한다.

 

무한수를 설정하는 방법에는 크게 3가지 정도가 있다.

 

 

1. 지수 표현

가장 널리 쓰이는 방법인 것 같다.

문제에서 가능한 최댓값이 10억 미만이라면 초기화를 10억으로 해줄 수 있는데

1e9 혹은 -1e9 와 같이 지수 표현으로 10억을 설정해주면

0의 개수가 많아져서 실수하는 것을 줄일 수 있다.

 

INF = 1e9

 

최대값의 범위에 따라 2e9 혹은 -2e9로 사용할 수도 있다.

 

 

2. sys.maxsize

sys 라이브러리의 maxsize 를 활용할 수 있다.

sys_max = sys.maxsize
sys_min = -sys.maxsize

 

위의 값들을 돌려보면 각각

9223372036854775807
-9223372036854775807 가 나온다.

 

 

3. float()를 활용하는 방법

float_max = float('inf')
float_min = -float('inf')

 

위와 같이 실수형으로 무한수를 설정해주기도 한다.

 

 

.

.

.

 

 

경우에 따라서 무한수가 너무 크면 overflow가 발생할 수도 있으므로

이런 저런거 신경 쓰기 싫다면

1번 방식을 사용하거나 문제에서 주어지는 범위값을 보고 설정해주는 것이 좋을 거 같다.

'코딩 테스트 > 정리 및 복습' 카테고리의 다른 글

딕셔너리 자료형  (1) 2024.03.22
전역 변수와 지역 변수  (1) 2024.03.22
완전 탐색과 백트래킹  (0) 2024.03.21
input() vs sys.stdin.readline()  (0) 2024.03.20
코딩 테스트 문제 유형 파악하기  (1) 2024.03.20