728x90

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) sort()함수를 사용하는 방법

N=int(input()) #N을 입력받는다.
A=list(map(int, input().split())) #N개의 정수를 공백으로 구분해서 리스트 배열로 입력받겠다.
A.sort() #리스트를 sort()를 사용해 오름차순으로 정리 해주겠다.
print(A[0], A[N-1]) #오름차순으로 정리된 수 A[0]값이 최소값, A[N-1]값이 최대값이 된다.

.sort()함수는 오름차순으로 정렬해주는 역할을 한다.

sort()함수를 사용해 오름차순으로 정렬시킨 리스트를 반환하면, 자동으로 리스트의 가장 첫 번째 값일, A[0]는 최소값이 되고

A[-1]=A[N-1]은 리스트에 가장 마지막에 오는 값으로 최대값이 된다.

 

 

풀이2) 리스트의 적용가능한 함수: max(), min()을 사용하는 방법

N=int(input()) #N을 입력받는다.
A=list(map(int, input().split())) #N개의 정수를 공백으로 구분해서 리스트 배열로 입력받겠다.
print(min(A),max(A)) #max와 mix함수로 최소와 최대값을 출력한다.

max(), min() 함수는 리스트를 매개변수로 넣어서 사용하는 가장 기본적인 함수이다.

함수 설명
min() 리스트 내부에서 최솟값을 찾는다
max() 리스트 내부에서 최댓값을 찾는다
sum() 리스트 내부에서 값을 모두 더한다.

ex)

>>>N=[1, 2, 3, 4, 5]

>>>print(max(N))

5

리스트에 가장 많이 사용되는 함수이므로, 헷갈리지 않도록 한다.

 

 

풀이3) format()함수를 max, min와 사용하는 방법

N=int(input()) #N을 입력받는다.
A=list(map(int, input().split())) #N개의 정수를 공백으로 구분해서 리스트 배열로 입력받겠다.
print("{} {}".format(min(A),max(A))) #format함수를 통해 A의 최소와 최대를 출력하겠다.

풀이2)와 max(), min()함수를 사용하는것은 동일하지만, format함수를 통해서 출력을 하는 방법이다.

{}.format()

728x90