Algorithm/BaekJoon
백준 21.12.21. 7568번 - 덩치
HappyFrog
2021. 12. 21. 22:35
N = int(input())
size = []
for _ in range(N):
x, y = map(int, input().split())
size.append([x, y])
result = []
for i in range(N):
rank = 1
for j in range(N):
if i == j:
continue
if size[j][0] > size[i][0] and size[j][1] > size[i][1]:
rank += 1
result.append(rank)
for _ in result:
print(_, end=' ')
- 우선 각 사람의 체중, 신장을 담을 리스트를 만들어줍니다.
- 각 개체마다의 체중, 신장을 비교해야 하기 때문에 개체를 구분하기 위해 list형식의 size를 list형식으로 추가했습니다.
- 그리고 개체의 순위를 저장할 rank를 list형식으로 선언해줍니다.
- 이제 각 개체마다 반복을 실행하며 다른 개체들과 비교해줍니다.
- 만약 i와 j가 같다면 continue를 사용하여 건너뛰어 줍니다.
- 등수는 "자신보다 덩치가 큰 사람의 수 + 1" 이라고 했으므로 덩치가 큰 사람을 찾을 때마다 rank를 1씩 더해줍니다.
- 그리고 size[i]를 기준으로 한 비교가 끝났다면 결과를 저장하는 list형식의 result에 저장해줍니다.
- 모든 비교가 끝났다면 반복문을 통해 등수를 출력해줍니다.