7222 : 정렬 기초 복습
•시간제한: 2.000 S
•메모리제한: 256 MB
•제출: 0
•통과: 0
•만든사람: suakii
문제 설명
정렬은 알고리즘의 핵심입니다. 이름과 점수로 이루어진 데이터를 정렬 조건에 맞게 출력하는 프로그램을 작성하십시오.
Python의
정렬 조건: 점수를 기준으로 내림차순, 점수가 같으면 이름의 사전순 오름차순으로 정렬합니다.
[제약 조건]
• 입력되는 모든 수는 정수입니다.
Python의
sorted()와 key 인자를 활용하여 다중 키 정렬을 구현하십시오.정렬 조건: 점수를 기준으로 내림차순, 점수가 같으면 이름의 사전순 오름차순으로 정렬합니다.
[제약 조건]
• 입력되는 모든 수는 정수입니다.
입력 설명
첫째 줄에 데이터 개수 $N$이 주어집니다. ($1 \le N \le 100{,}000$)
둘째 줄부터 $N$개의 줄에 이름(영문, 공백 없음)과 점수(정수) 쌍이 주어집니다.
둘째 줄부터 $N$개의 줄에 이름(영문, 공백 없음)과 점수(정수) 쌍이 주어집니다.
출력 설명
점수를 기준으로 내림차순, 점수가 같으면 이름의 사전순 오름차순으로 정렬한 결과를 한 줄에 하나씩 출력합니다.
입력 예시
COPY
복사되었습니다!
복사되었습니다!
5
Alice 90
Bob 85
Charlie 90
Diana 70
Eve 85
출력 예시
COPY
복사되었습니다!
복사되었습니다!
Alice 90
Charlie 90
Bob 85
Eve 85
Diana 70
도움
sorted(data, key=lambda x: (-x[1], x[0])) 형태로 다중 키 정렬을 구현하십시오. 점수는 내림차순이므로 음수를 취합니다.