7568번: 덩치 [python]

백준 알고리즘의 2751번 문제이다.

  1. 일단 되게는 하자
n = int(input())
data = []
rank = []
for i in range(n):
    data.append(list(map(int, input().split(" "))))

num = 1
for i in data:
    for j in data:
        if i[0] < j[0] and i[1] < j[1]:
            num += 1
    rank.append(num)
    num = 1

for i in rank:
    print(i, end=" ")

설명
이 문제에서 순위는 자신보다 덩치가 큰 사람의 수에 따라 결정이 된다. N이 50이 넘지 않기에 일일이 비교해서 순위를 매겨주었다.

처음에 문제에 오류가 있는 줄 알았다. A의 키가 1등이지만, 몸무게가 꼴등이면, 모든 다른 이들과 비교할 수 없는데 순위를 정할 수 없는 것 아닌가?라고 생각했다. 하지만, 이 문제에서는 그저 자기보다 덩치가 큰 사람의 수에 따라 순위가 결정된다.

좋은 웹페이지 즐겨찾기