JiSoo's Devlog

[백준 / 파이썬] 10825번 국영수 본문

코테준비

[백준 / 파이썬] 10825번 국영수

지숭숭숭 2024. 2. 4. 16:22

import sys

n = int(input())
a = []

for i in range(n):
    d = list(sys.stdin.readline().rstrip().split())
    a.append((d[0], int(d[1]), int(d[2]), int(d[3])))

k = sorted(a, key=lambda x:(-int(x[1]), int(x[2]), -int(x[3]), x[0]))

for j in k:
    print(j[0])

 

1. 국어 내림차순

2. 영어 오름차순

3. 수학 내림차순

4. 영어 오름차순

 

학생 수만큼 입력받고 공백으로 데이터 구분하여 입력받아 리스트로 변환

이름만 string으로 두고 나머지 int로 변환해 a에 넣는다

정렬 기준을 key로 설정해 lambda 사용

lambda 사용할 때 리스트를 사용하면 원하는 순서대로 여러 키를 동시에 적용시킬 수 있다

-를 붙여주면 내림차순 가능

정렬된 값에서 이름만 출력

 

728x90