백준 국영수 코드 및 해설 (파이썬)
2021. 8. 2. 14:25ㆍalgorithm
반응형
https://www.acmicpc.net/problem/10825
10825번: 국영수
첫째 줄에 도현이네 반의 학생의 수 N (1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 한 줄에 하나씩 각 학생의 이름, 국어, 영어, 수학 점수가 공백으로 구분해 주어진다. 점수는 1보다 크거나 같고, 1
www.acmicpc.net
sort의 key를 활용해 문제의 조건에 맞게 정렬했습니다. 디폴트로 오름차순으로 정렬되므로, 내림차순으로 정렬되어야 할 경우엔 -를 붙여 내림차순으로 정렬되도록 했습니다.
import sys
# 학생 수
N = int(sys.stdin.readline())
students = []
for i in range(N):
# 이름, 국어, 영어, 수학
name, korean, english, math = list(sys.stdin.readline().split())
students.append((name, int(korean), int(english), int(math)))
students.sort(key=lambda x: (-x[1], x[2], -x[3], x[0]))
for student in students:
print(student[0])
반응형
'algorithm' 카테고리의 다른 글
프로그래머스 실패율 코드 및 해설 (파이썬) (0) | 2021.08.04 |
---|---|
백준 안테나 코드 및 해설 (파이썬) (0) | 2021.08.03 |
정렬 (0) | 2021.08.02 |
백준 병사 배치하기 코드 및 해설 (파이썬) (0) | 2021.07.29 |
백준 퇴사 코드 및 해설 (파이썬) (0) | 2021.07.28 |