본문 바로가기
알고리즘 PS/자료구조

[백준] 10818번 - 최소, 최대 (Python)

by 백호루이 2024. 3. 16.
반응형

https://www.acmicpc.net/problem/10818

 

10818번: 최소, 최대

첫째 줄에 정수의 개수 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 N개의 정수를 공백으로 구분해서 주어진다. 모든 정수는 -1,000,000보다 크거나 같고, 1,000,000보다 작거나 같은 정수이다.

www.acmicpc.net

문제

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

 

<문제 풀이>

파이썬의 경우 ArrayList 자료구조가 따로 없기 때문에 배열을 사용해서 풀면 된다.

min, max 변수를 두고 배열을 탐색하면서 값을 비교 후 크면 max, 작으면 min에 업데이트 한다.

마지막까지 탐색 후 변수의 최종 값을 출력한다.

 

<풀이>

n = int(input())
array_list = list(map(int, input().split()))

min = array_list[0]
max = array_list[0]

for num in array_list:
    if num < min:
        min = num
    if num > max:
        max = num

print(min, max)

 

<풀이 - 내장함수 min(), max() 사용>

n = int(input())
array_list = list(map(int, input().split()))
print(min(array_list), max(array_list))
반응형

댓글