백준 7568번 - 덩치 (Python3)
코드
n = int(input())
# 덩치를 입력받을 리스트
physical = []
for _ in range(n):
physical.append(list(map(int, input().split())))
for i in range(n):
# 등수
rank = 1
for j in range(n):
if i == j:
# 조금이나마 시간 측면에서 성능을 확보하고자 구현
continue
# 그냥 단순하게 나보다 큰 사람이 있으면 자기 등수를 1씩 늘려줌
if physical[i][0] < physical[j][0] and physical[i][1] < physical[j][1]:
rank += 1
print(rank, end = ' ')
문제 해설
브루트 포스 문제이다. 즉, 단순히 모든 경우를 따져보며 정답을 구하면 된다. 이 문제의 경우, 발상을 조금 전환해서 본인보다 등수가 높은 사람이 있으면 그냥 본인의 등수를 1씩 증가시키게 구현을 하니까 생각보다 쉽게 풀 수 있었다.
댓글남기기