오늘은 프로그래머스 120882번 문제인 "등수 매기기" Lv.0을 파이썬으로 풀어보도록 하겠습니다.
[프로그래머스] 등수 매기기 Lv.0 - [파이썬/python]
문제 설명 💻
영어 점수와 수학 점수의 평균 점수를 기준으로 학생들의 등수를 매기려고 합니다. 영어 점수와 수학 점수를 담은 2차원 정수 배열 score
가 주어질 때, 영어 점수와 수학 점수의 평균을 기준으로 매긴 등수를 담은 배열을 반환(return)하도록 solution 함수를 완성해주세요.
제한사항 🚨
- 0 ≤
score
[0],score
[1] ≤ 100 - 1 ≤
score
의 길이 ≤ 10 score
의 원소 길이는 2입니다.score
는 중복된 원소를 갖지 않습니다.
힌트 🌈
더보기
1. 각 학생의 평균 점수를 계산합니다.
2. 평균 점수를 기준으로 학생들을 정렬합니다. 이 때, 평균 점수가 높은 학생이 먼저 오도록 내림차순으로 정렬합니다.
3. 정렬된 학생들의 순서를 이용하여 등수를 매깁니다. (동점자에 대한 처리에 주의하세요)
!!!정답 주의!!!
소스 코드 🌟
def solution(score):
# 각 학생의 평균 점수를 계산하고, 리스트에 저장
averages = [sum(s) for s in score]
# 평균 점수를 내림차순으로 정렬
sorted_averages = sorted(averages, reverse=True)
# 각 학생의 등수를 계산하고, 리스트에 저장
ranks = [sorted_averages.index(a) + 1 for a in averages]
return ranks
테스트 결과 🏳🌈
728x90
'코딩테스트' 카테고리의 다른 글
[프로그래머스] 올바른 괄호 - Lv.2 (48) | 2023.10.08 |
---|---|
[프로그래머스] 푸드 파이터 대회 - Lv.1 (46) | 2023.10.08 |
[프로그래머스] 캐릭터의 좌표 - Lv.0 (51) | 2023.10.06 |
[프로그래머스] 공배수 - Lv.0 (43) | 2023.10.06 |
[프로그래머스] 숫자 짝꿍 - Lv.1 (51) | 2023.10.05 |