https://www.acmicpc.net/problem/7568
설명은 길었지만 짧게 요약하자면,
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 했다.
'알고리즘' 카테고리의 다른 글
프로그래머스) 푸드 파이트 대회 -python (0) | 2023.01.03 |
---|---|
프로그래머스) 명예의 전당(1) - python (0) | 2023.01.03 |
프로그래머스)과일장수 -python (0) | 2023.01.02 |
프로그래머스) 크기가 작은 부분문자열 -python (0) | 2023.01.01 |
프로그래머스 피로도 - python (0) | 2022.12.28 |