문제
N개의 정수가 주어진다. 이때, 최솟값과 최댓값을 구하는 프로그램을 작성하시오.
입력
첫째 줄에 정수의 개수 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 N개의 정수를 공백으로 구분해서 주어진다. 모든 정수는 -1,000,000보다 크거나 같고, 1,000,000보다 작거나 같은 정수이다.
출력
첫째 줄에 주어진 정수 N개의 최솟값과 최댓값을 공백으로 구분해 출력한다.
예제 입력 1
5
20 10 35 30 7
예제 출력 1
7 35
👩🦲 나의 풀이
import heapq
N=int(input())
lst=list(map(int, input().split()))
print(heapq.nsmallest(1, lst)[0], end=' ')
print(heapq.nlargest(1, lst)[0])
한 번에 통과했다 🤗
최솟값, 최댓값을 구하라는 것을 보자마자 힙이 생각났다.
🎨 다른 사람 풀이
N=int(input())
numbers=list(map(int, input().split()))
min_number=min(numbers)
max_number=max(numbers)
print(min_number, max_number)
min이랑 max써도 통과한다.
import sys
N=int(sys.stdin.readline().rstrip())
number=list(map(int, (sys.stdin.readline().rstrip().split(" "))))
print(min(number), max(number))
입력 메소드만 다를 뿐 위랑 같다.
문제 출처 👉 백준
반응형
'coding test' 카테고리의 다른 글
[파이썬] 10870. 피보나치 수 5 (0) | 2021.05.19 |
---|---|
[파이썬] 2460. 지능형 기차2 (0) | 2021.05.18 |
[파이썬] 2501. 약수 구하기 (0) | 2021.05.17 |
[파이썬] 보석 쇼핑 (0) | 2021.05.08 |
[파이썬, Java] 수식 최대화 (0) | 2021.05.07 |