본문 바로가기
Problem Solving/백준

[백준|파이썬] 7568: 덩치 (실버5)

by 청량리 물냉면 2023. 4. 30.
반응형
문제

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

 

7568번: 덩치

우리는 사람의 덩치를 키와 몸무게, 이 두 개의 값으로 표현하여 그 등수를 매겨보려고 한다. 어떤 사람의 몸무게가 x kg이고 키가 y cm라면 이 사람의 덩치는 (x, y)로 표시된다. 두 사람 A 와 B의 덩

www.acmicpc.net

 

 

🐍파이썬
더보기

❌틀린 코드

import sys
input=sys.stdin.readline
n = int(input())
people = []
for _ in range(n):
    people.append(input().split())
arr = [0] * n   #등수
for i in range(len(people)):
    for j in range(i+1, len(people)):
        if people[i][0] < people[j][0] and people[i][1] < people[j][1]:
            arr[j] += 1
        elif people[i][0] > people[j][0] and people[i][1] > people[j][1]:
            arr[i] += 1
sort_arr = sorted(arr, reverse=True)
for i in arr:
    print(sort_arr.index(i)+1, end=" ")

등수를 비교하지 않은 원소들끼리 등수를 비교해 출력하는 코드를 작성했으나 오답이 떴다.

import sys
input=sys.stdin.readline
n = int(input())
people = []
for _ in range(n):
    w, h = map(int, input().split())
    people.append((w,h))
arr = [1] * n   #등수
for i in range(len(people)):
    for j in range(len(people)):
        if people[i][0] < people[j][0] and people[i][1] < people[j][1]:
            arr[i] += 1
    print(arr[i], end=" ")

문제의 요구사항대로 나보다 더 덩치가 큰 사람의 수를 따져 등수를 결정하면 된다.

이중 for문을 통해 나보다 덩치가 큰 사람이 있다면 내 등수를 한 등수 후순위로 내려 표시한다.

반응형