이것저것 공부 기록하기

[Algorithm] 1일1솔 - 백준 7568 덩치 (python3) 본문

Algorithm/Baekjoon

[Algorithm] 1일1솔 - 백준 7568 덩치 (python3)

얍욥얍 2022. 1. 3. 10:47

문제링크

https://www.acmicpc.net/problem/7568

 

7568번: 덩치

우리는 사람의 덩치를 키와 몸무게, 이 두 개의 값으로 표현하여 그 등수를 매겨보려고 한다. 어떤 사람의 몸무게가 x kg이고 키가 y cm라면 이 사람의 덩치는 (x, y)로 표시된다. 두 사람 A 와 B의 덩

www.acmicpc.net

 

문제설명

n명 집단에서 각 사람의 덩치 등수는 자신보다 더 '큰 덩치'의 사람의 수로 정해진다.

또한, 가장 큰 덩치의 사람은 키와 몸무게가 모두 어떤 사람보다도 더 커야하며 그 등수는 1이다.

따라서 자신보다 더 큰 덩치의 사람이 k명이면 그 사람의 덩치 등수는 k+1이다.

이 때, 같은 덩치 등수를 가진 사람은 여러 명도 가능하므로, 2중으로 for문을 돌면서 요소 간 완전탐색이 필요한 문제이다.

리스트 내 인덱스가 완전히 같을 경우만 제외하고 요소 간 크기를 비교해주면서 등수를 산정해주었다.

 

 

문제풀이

n = int(input())
tmp = [list(map(int, input().split())) for _ in range(n)]
ans = [1 for _ in range(n)]
for i, v in enumerate(tmp):
    for j, v2 in enumerate(tmp):
        if i != j and v[0] < v2[0] and v[1] < v2[1]:
            ans[i] += 1  # 덩치가 작으면 순위 밀려나게 하기
        continue
print(*ans)

반응형
Comments