[개념] Min/Max / 가장 큰 수 고르기

김수연·2023년 2월 10일
0

코딩테스트

목록 보기
3/5

Min/Max / 가장 큰 수 고르기

개념

⁕ 주어진 숫자들 중 최댓값 구하는 방법

arr = [1, 5, 2, 5, 3, 9]

max_val = 0
for elem in arr:
	if elem > max_val:
    	max_val = elem
        
print(max_val)

>> 출력
9

하지만 주어진 숫자가 음수일 경우 위의 코드대로 진행하면 최댓값을 구할 수 없다.

arr = [-1, -5, -2, -5, -3, -9]

max_val = 0
for elem in arr:
	if elem > max_val:
    	max_val = elem
        
print(max_val)

>> 출력
-1

위와 같은 문제가 발생한 근본적인 이유에 대해 생각해보면, 주어진 숫자보다 지정한 최댓값의 초기값이 큰 것이 문제였다.

[sol①] -sys.maxsize 사용

import sys

arr = [-1, -5, -2, -5, -3, -9]

max_val = -sys.maxsize
for elem in arr:
    if elem > max_val:
        max_val = elem

print(max_val)

>> 출력
-1

[sol②] 최댓값의 초기값첫번째 원소로 지정한다.
max_val = arr[0]

arr = [-1, -5, -2, -5, -3, -9]

max_val = arr[0]
for elem in arr:
	if elem > max_val:
    	max_val = elem
        
print(max_val)

>> 출력
-1
profile
Quien no arriesga, no gana nada

0개의 댓글