728x90
반응형
lambda를 사용해 기준을 잡고 정렬해주면 된다.
이름 오름차순 -> 국어 내림차순 -> 영어 오름차순 -> 수학 내림차순
그냥 input()을 사용해도 통과는 되지만 시간이 좀 오래 걸린다(4580ms)
sys.stdin.readlien()을 사용하면 9배가량 빨라진다(504ms)
import sys
li = []
for i in range(int(input())):
t = sys.stdin.readline().split()
t[1:] = map(int, t[1:])
li.append(t)
li = sorted(li, key=lambda x : x[0])
li = sorted(li, key=lambda x : x[3], reverse = True)
li = sorted(li, key=lambda x : x[2])
li = sorted(li, key=lambda x : x[1], reverse = True)
for i in li:
print(i[0])
728x90
반응형
'Agorithm > 백준 알고리즘' 카테고리의 다른 글
백준 알고리즘 2675번 문자열 반복(python) (0) | 2020.02.06 |
---|---|
백준 알고리즘 3047번 ABC(python) (0) | 2020.02.06 |
백준 알고리즘 2609번 최대공약수와 최소공배수(python) (0) | 2020.02.06 |
백준 알고리즘 2588번 곱셈(python) (0) | 2020.02.06 |
백준 알고리즘 2581번 소수(python) (0) | 2020.02.06 |