
안녕하세요 :)
오늘은 백준 10818번 최소-최대 문제를 가지고 왔습니다.
이번 문제의 핵심은 리스트 요소들 중에서 최댓값과 최솟값을 구하는 것이다.
최댓값을 구하는 방법은 다음과 같습니다. 먼저 리스트의 첫번째 값으로 max 변수를 초기화합니다. 다음 for을 사용해서 리스트 요소를 하나씩 꺼내면서 max 변수보다 큰 요소가 있을 때 그 값으로 max를 초기화해줍니다.
max = l[0] for x in l: if(max<x): max = x
최솟값을 구하는 방법은 다음과 같습니다. 먼저 리스트의 첫번째 값으로 min 변수를 초기화합니다. 다음 for을 사용해서 리스트 요소를 하나씩 꺼내면서 min 변수보다 큰 요소가 있을 때 그 값으로 min를 초기화해줍니다.
min = l[0] for x in l: if(min>x): min = x
다음은 10818번의 정답 코드입니다.
import sys
n = int(sys.stdin.readline())
l = list(map(int, sys.stdin.readline().split()))
min = l[0]
for x in l:
if(min>x):
min = x
max = l[0]
for x in l:
if(max<x):
max = x
print(min, end=" ")
print(max, end=" ")