본문 바로가기

Python/Python 문제

Python 문제 63

#문제3
체조선수는 여러 심사위원의 점수 중 가장 높은 점수 하나와 가장 낮은 점수 하나를 제외하고 나머지 점수들의 평균을 계산하여 최종점수를 받습니다. _단, 이때 소수점 이하의 수는 버립니다._

예를 들어, A 선수가 10명의 심사위원에게 [35, 28, 98, 34, 20, 50, 85, 74, 71, 7]의 점수를 받았습니다. 가장 높은 점수인 98점과 가장 낮은 점수인 7점을 제외하고 나머지 8명의 심사위원 점수 평균을 구하면 49.625점입니다. 여기서 소수점 이하의 수를 버리면 49점입니다. 

각 심사위원이 매긴 점수가 담긴 리스트 scores가 매개 변수로 주어질 때, 이 선수가 받은 점수를 return 하도록 solution 함수를 작성해주세요.

---
#####매개변수 설명
심사위원이 준 점수가 들어있는 리스트 scores가 solution 함수의 매개변수로 주어집니다.
* scores의 길이는 3 이상 100 이하입니다.
* 심사위원이 부여하는 점수의 범위는 0 이상 100 이하의 정수입니다.

---
#####return 값 설명
심사위원이 준 점수 중 가장 높은 점수와 가장 낮은 점수를 제외한 점수의 평균에서 소수점을 버린 값을 return 합니다.

---
#####예시

| scores                                | return |
|-----------------------------------------|--------|
| [35, 28, 98, 34, 20, 50, 85, 74, 71, 7] | 49  |
| [1, 1, 1, 1, 1]                      | 1   |

#####예시 설명
예시 #1
문제에 나온 예와 같습니다.

예시 #2
가장 높은 점수는 1점이며, 가장 낮은 점수도 1점입니다. 1점을 두 개 제외한 나머지 점수의 합은 3점이며, 평균은 1점이 됩니다.

 

def solution(scores):
    sum = 0
    scores.sort()
    scores.remove(scores[0])
    scores.remove(scores[-1])

    for a in scores:
        sum += a
        
    avg = sum / len(scores)
    answer = int(avg)
    return answer

'Python > Python 문제' 카테고리의 다른 글

Python 문제 65  (0) 2021.11.27
Python 문제 64  (0) 2021.11.27
Python 문제 62  (0) 2021.11.27
Python 문제 61  (0) 2021.11.27
Python 문제 60  (0) 2021.11.27