[백준] 8979번 올림픽

거북이·2023년 1월 4일
0

백준[실버5]

목록 보기
44/114
post-thumbnail

💡문제접근

다음과 같은 세 가지 우선순위에 의해 매겨진 조건을 통해 각 국가를 정렬했다.
1. 금메달 수가 더 많은 나라(금메달 수로 내림차순 정렬)
2. 금메달 수가 같으면 은메달 수가 더 많은 나라(은메달 수로 내림차순 정렬)
3. 금, 은메달 수가 같으면 동메달 수가 더 많은 나라(동메달 수로 내림차순 정렬)

💡코드(메모리 : 30616KB, 시간 : 40ms)

import sys

N, K = map(int, sys.stdin.readline().strip().split())
rank = []
for _ in range(N):
    number, gold, silver, bronze = map(int, sys.stdin.readline().strip().split())
    rank.append([number, gold, silver, bronze])

rank.sort(key = lambda x : (-x[1], -x[2], -x[3]))

for i in range(N):
    if rank[i][0] == K:
        index = i

for i in range(N):
    if rank[index][1:] == rank[i][1:]:
        print(i+1)
        break

💡소요시간 : 23m

0개의 댓글