https://www.acmicpc.net/problem/8979
1.설명
이 문제에서 배워야할껀 2차원 배열 입력이라고 생각이됩니다!! 2차원 배열 입력받는 법에 대해서 알아볼께용
가로A, 세로 B길이의 배열을 선언한다고 가정합시다.(행렬로 하면A가 column,B가 row입니다.) 입력받을때 B의 크기는 반드시 알아야됩니다.
1.원소 하나씩 입력받기
arr = [for _ in range(B)] // 2차원 배열의 가로길이 : B
for i in range(B):
arr[i] = list(map(int, input().split()))
2.원소에 list 추가하기
arr = []
for i in range(B):
arr.append(list(map(int, input().split())))
3.선언과 동시에 입력
arr = [list(map(int, input().split())) for _ in range(B)]
저는 선언과 동시에 입력을 받고자 했습니다! 입력 받은 뒤에 내림차순으로 정렬시켰습니다!
2.코드
N, K = map(int, input().split())
medals = [list(map(int, input().split())) for _ in range(N)] #2차원 배열
medals.sort(key = lambda x : (x[1], x[2], x[3]), reverse=True)#내림차순으로 정렬
idx = [medals[i][0] for i in range(N)].index(K)
for i in range(N):
if medals[idx][1:] == medals[i][1:]:
print(i+1)
break
'코딩test공부 > 백준python' 카테고리의 다른 글
9017.크로스 컨트리 (1) | 2024.01.08 |
---|---|
1244.스위치 끄고 켜기 (2) | 2024.01.04 |
10431.줄세우기 (0) | 2024.01.02 |
9655. 돌게임 (0) | 2024.01.02 |
11723.집합 (1) | 2023.12.28 |