알고리즘
백준 7568)덩치 -python
1일1공부실천하자
2022. 12. 30. 22:00
https://www.acmicpc.net/problem/7568
7568번: 덩치
우리는 사람의 덩치를 키와 몸무게, 이 두 개의 값으로 표현하여 그 등수를 매겨보려고 한다. 어떤 사람의 몸무게가 x kg이고 키가 y cm라면 이 사람의 덩치는 (x, y)로 표시된다. 두 사람 A 와 B의 덩
www.acmicpc.net
설명은 길었지만 짧게 요약하자면,
A 의[몸무게,키]
B 의[몸무게,키]
A의 몸무게와 키 둘 모두가 B의 그것와 크다면 A는 B보다 덩치가 크다 할 수 있다.
만일 둘 중 하나라도 작으면 A는 B보다 덩치가 크다고 할 수 없다.
핵심은 "A의 몸무게와 키 둘 모두가 B의 그것와 크다면 A는 B보다 덩치가 크다 할 수 있다"
이 문항이다.
즉 등수가 올라가는 경우는 몸무게와 키 모두가 상대보다 클 경우이고 그 외에 경우엔 등수가 올라가질 않는다.
a = int(input())
arr = []
for _ in range(a):
b = list(map(int,input().split()))
arr.append(b)
answer = [1 for _ in range(a)]
for i in range(len(arr)):
for j in range(len(arr)):
if i == j:
continue
if arr[i][0] < arr[j][0] and arr[i][1] < arr[j][1]:
answer[i] += 1
for i in answer:
print(i, end=" ")
완전탐색이라는 것에 충실하게 코드를 적었다.
answer라는 리스트에 입력받은 사람의 수 만큼 1로 채우고
만일 i번째 사람이 i가 아닌 j번째 사람에 비해 키와 몸무게가 더 작다면 answer[i]의 등수를 +1 했다.