[백준] 10818번 파이썬 (Python) 풀이
CodingTest/문제 풀이

[백준] 10818번 파이썬 (Python) 풀이

문제

N개의 정수가 주어진다. 이때, 최솟값과 최댓값을 구하는 프로그램을 작성하시오.
(출처: 10818)

입력

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

출력

첫째 줄에 주어진 정수 N개의 최솟값과 최댓값을 공백으로 구분해 출력한다.

예제 입력 1

5
20 10 35 30 7

예제 출력 1

7 35

풀이

 

 

  • 배열 l의 맨 마지막 원소
    l[-1] 
  • sort() 와 sorted()의 차이
    • sort()는 배열의 원소들을 직접 정렬한다. 주의 : None을 반환한다. 
    • 원 배열을 직접 정렬하고 싶지 않다면 sorted()를 사용하면 된다. sorted()는 반환값이 있다. 
  • 내장함수 쓰지 않고 구현하는줄 알고 정렬부터 한땀한땀한 후 최댓값, 최솟값구하는 코드도 만들었다. 결과는 시간초과
  • 머리 속에서 한땀한땀 구현해본 정렬은 버블 정렬이었다.
    • 버블 정렬 : 적은 수의 배열에서 적합. 시간 복잡도 O(n^2)
  • 파이썬 내장 sort함수의 시간복잡도는 O(N log N)이라고 한다.
    (출처 : Complexity of Python Operations)