출처 :
https://www.acmicpc.net/problem/7568
# 입출력
n = int(input())
group = []
for _ in range(n):
x = list(map(int, input().split()))
group.append(x)
# [[x1,y1],[x2,y2],...]
for i in group:
rank = 1
for j in group:
if i[0] < j[0] and i[1] < j[1]:
rank += 1
print(rank, end = ' ')
풀이 도중 group을 sort() 해보니까 놀랍게도 알아서 정렬이 되었다. 그래서 그걸 사용해 보려 했는데 비교가 불가능한 인덱스를 찾아 오기가 너무 힘들어 보여서 포기하고 브루트 포스를 사용하기로 했다.
입출력은 간단하게 늘 하듯이 받아와주고
입출력에서 만든 리스트에서 1번째를 가져온 다음 x,y 보다 동시에 큰게 있다면 1을 더해준다.
이렇게 하면 각자 자기의 등수는 확실히 알 수 있으므로 간단히 해결된다.
'코딩테스트' 카테고리의 다른 글
백준 1436 영화감독 슘 (0) | 2022.01.15 |
---|---|
백준 1018 체스판 다시 칠하기 (0) | 2022.01.15 |
백준 11729 하노이 탑 이동순서 - python (0) | 2022.01.15 |
[프로그래머스] 실패율 - python (0) | 2022.01.14 |
[프로그래머스] 같은 숫자는 싫어 (0) | 2022.01.13 |