https://school.programmers.co.kr/learn/courses/30/lessons/120811

 

프로그래머스

SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

 

 

문제 설명

중앙값은 어떤 주어진 값들을 크기의 순서대로 정렬했을 때 가장 중앙에 위치하는 값을 의미합니다. 예를 들어 1, 2, 7, 10, 11의 중앙값은 7입니다. 정수 배열 array가 매개변수로 주어질 때, 중앙값을 return 하도록 solution 함수를 완성해보세요.

 


 

제한사항

  • array의 길이는 홀수입니다.
  • 0 < array의 길이 < 100
  • -1,000 < array의 원소 < 1,000

 

입출력 예


 

array result
[1, ,2, 7, 10, 11] 7
[9, -1, 0] 0

 


 

입출력 예 설명

입출력 예 #1

  • 본문과 동일합니다.

입출력 예 #2

  • 9, -1, 0을 오름차순 정렬하면 -1, 0, 9이고 가장 중앙에 위치하는 값은 0입니다.

 

def solution(array):
    a = sorted(array)
    answer = a[int(len(a)/2)]
    return answer

 

1. array를 오름차순 정렬

   

   sorted(array)

 

2. 중앙값을 구하려면 len(a)/2 후,  round( )로 반올림해 3을 구하려 했으나

    파이썬 인덱싱을 하려면 a[2]가 되어야 하기 때문에 소숫점 자리를 제거

 

array result  
[1, ,2, 7, 10, 11] 7 len(a)/2 = 2.5
int(2.5) = 2
a[2]
[9, -1, 0] 0 len(a)/2 = 1.5
int(1.5) = 1
a[1]

+ Recent posts