본문 바로가기
백준 알고리즘(BOJ)

백준 알고리즘 7568 (덩치) - python

by Think_why 2019. 10. 16.

[문제] 백준 알고리즘 7568 (덩치)

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

 

7568번: 덩치

우리는 사람의 덩치를 키와 몸무게, 이 두 개의 값으로 표현하여 그 등수를 매겨보려고 한다. 어떤 사람의 몸무게가 x kg이고 키가 y cm라면 이 사람의 덩치는 (x,y)로 표시된다. 두 사람 A 와 B의 덩치가 각각 (x,y), (p,q)라고 할 때 x>p 그리고 y>q 이라면 우리는 A의 덩치가 B의 덩치보다 "더 크다"고 말한다. 예를 들어 어떤 A, B 두 사람의 덩치가 각각 (56,177), (45,165) 라고 한다면 A의 덩치가 B보다 큰

www.acmicpc.net

 

몸무게와 키가 모두 큰 경우를 기준으로 순위을 매기는 문제이다.

몸무게와 키가 모두 크진 않은 경우는 동일 순위로 취급한다.

가장 힌트라고 생각되는 문장은 "만일 자신보다 더 큰 덩치의 사람이 k명이라면 그 사람의 덩치 등수는 k+1이 된다."

말 그대로, 브루트 포스를 통해 자신보다 몸무게와 키가 모두 큰 경우를 카운트하면 된다.

 

 

[Code]

import sys
T = int(sys.stdin.readline())
people = []
for _ in range(T):
    people.append(list(map(int, sys.stdin.readline().split())))

def solve():
    out = ''
    for i in people:
        rank = 1
        for j in people:
            if i[0] < j[0] and i[1] < j[1]:
                rank += 1
        out += str(rank)
        out += ' '
    print(out)
solve()
728x90

댓글