코딩테스트

[백준][Python] 7568 덩치

yeeejji 2024. 5. 12. 21:35
728x90

구현, 브루트포스 / 실버 5

💪🏻

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

 

 

내 풀이

N = int(input())
weight = []
height = []
rank = []

for _ in range(N):
    w, h = map(int, input().split())
    weight.append(w)
    height.append(h)

for i in range(N):
    cw = weight[i]
    ch = height[i]
    big = 0
    for j in range(N):
        if cw < weight[j] and ch < height[j]:
            big += 1
    rank.append(big + 1)

print(*rank)

 

✔️ 나보다 덩치가 큰 사람 ➡ 나보다 몸무게가 많이 나가면서 나보다 키가 큰 사람

 

 

코드 설명

 

weight: 몸무게를 저장하는 리스트

height: 키를 저장하는 리스트

rank: 덩치 등수를 저장하는 리스트

 

몸무게와 키를 입력받아 순서대로 리스트에 저장한다.

for _ in range(N):
    w, h = map(int, input().split())
    weight.append(w)
    height.append(h)

 

big: 나보다 덩치가 큰 사람의 수

 

N명을 모두 검사하며 순서대로 덩치 등수를 구한다.

현재 검사 대상인 사람보다 무거우면서 키가 더 큰 사람만이 덩치가 큰 사람이므로, big을 증가시킨다.

최종 덩치 등수(big + 1)를 rank에 추가한다.

for i in range(N):
    cw = weight[i]
    ch = height[i]
    big = 0
    for j in range(N):
        if cw < weight[j] and ch < height[j]:
            big += 1
    rank.append(big + 1)

 

다 검사해 보는 방법밖에 없다!