본문 바로가기
SWEA

[SWEA] (D1) 2063. 중간값 찾기 / 파이썬(python)

by Dev_Green 2022. 5. 4.

중간값은 통계 집단의 수치를 크기 순으로 배열 했을 때 전체의 중앙에 위치하는 수치를 뜻한다.

입력으로 N 개의 점수가 주어졌을 때, 중간값을 출력하라.


[예제]

N이 9 이고, 9개의 점수가 아래와 같이 주어질 경우,

85 72 38 80 69 65 68 96 22

69이 중간값이 된다.


[제약 사항]

1. N은 항상 홀수로 주어진다.

2. N은 9이상 199 이하의 정수이다. (9 ≤ N ≤ 199)


[입력]

입력은 첫 줄에 N 이 주어진다.

둘째 줄에 N 개의 점수가 주어진다.


[출력]

N 개의 점수들 중, 중간값에 해당하는 점수를 정답으로 출력한다.

https://swexpertacademy.com/main/code/problem/problemDetail.do?problemLevel=1&contestProbId=AV5QPsXKA2UDFAUq&categoryId=AV5QPsXKA2UDFAUq&categoryType=CODE&problemTitle=&orderBy=FIRST_REG_DATETIME&selectCodeLang=ALL&select-1=1&pageSize=10&pageIndex=1 

 

SW Expert Academy

SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!

swexpertacademy.com


문제풀이

입력받은 수들을 오름차순으로 정렬한 후 중간값에 해당하는 인덱스를 지정해준다.

* 주의) med를 (n-1)/2 로 지정하면 float의 형태로 저장된다.(ex. 2.0) 따라서 몫을 구하는 // 사용

n = int(input())
li = list(map(int, input().split()))
li.sort()
med = (n-1)//2
print(li[med])