구현한 코드
N , K = map(int, input().split()) # m : 찾는 국가 번호
prize = [0 for i in range(4)]
for i in range(N):
prize[i] = list(map(int,input().split()))
# prize = [list(map(int,input().split())) for _ in range(N)] # 2차원 배열 입력 받는 또 다른 방법
prize.sort(key = lambda x: (x[1], x[2] , x[3]) , reverse=True)# 람다식을 활용하여 정렬 기준을 금, 은 , 동 순서로 기준을 주었다.
# 찾는 국가의 인덱스 => 순위
idx = 0
for j in range(N):
if(prize[j][0] == K):
idx = j
# 동점 확인
for z in range(N):
if prize[idx][1:] == prize[z][1:]:
print(z+1) # range(N)으로 0부터 시작하므로 +1의 결과가 되어야 순위가 나온다.
break
여기서의 포인트는 람다식을 통해서 정렬 조건을 주어서 정렬하는 것이 핵심 포인트이다.
이 방법은 유용하게 사용될 것 같으니 잘 기억하는 것이 좋을 것 같다!
'알고리즘 > 백준' 카테고리의 다른 글
백준-1158-요세푸스 문제 (1) | 2024.04.06 |
---|---|
백준-2563-색종이 (1) | 2024.04.06 |
백준-9017-크로스 컨트리 (0) | 2024.04.05 |
백준-11723-집합 (0) | 2024.03.27 |
백준-1157-단어 공부 (0) | 2024.03.26 |