[BOJ] 10818 최소, 최대
이 문제를 풀이하면서 최대 최소값을 도춣하기 위해서 list를 정렬하고자 했다. 그러면서 sort()
와 sorted()
의 차이를 알아봤는데
sort()
는 리스트형 메서드로 리스트 원본 값을 정렬한다. = 리턴 값 없음sorted()
는 내장 함수이며 리스트 원본 값은 그대로 두고 정렬 값을 반환한다. = 기존 값 유지하고 정렬된 값을 리턴
나의 풀이
N = int(input())
numbers = list(map(int, input().split(" ")))
numbers.sort()
for i in range(len(numbers)):
if len(numbers) == 1:
print(numbers[i], end=" ")
print(numbers[i])
else:
if i == 0:
print(numbers[i], end=" ")
elif i == (len(numbers) -1):
print(numbers[i])
다른 풀이
n = int(input())
list = list(map(int, input().split()))
print(min(list), max(list))
다른 풀이를 보니, 최소값과 최대값을 출력할 때에는 그냥 메서드 쓰면 되겠다. 예제 풀이를 많이 하면서 메서드와 익숙해질 수 있도록 해야겠다. 특히나 내가 직접 구현한 min, max를 출력하는 로직은 반례가 생길 여지가 있기에 불확실성이 생긴다.
첫 시도에서 N=1 인 경우를 고려하지 않아서 값을 제대로 출력하지 못했다.
결론 : 메서드 쓰자