[BOJ] 7568. 덩치

Jimeaning·2023년 12월 22일
0

코딩테스트

목록 보기
134/143

Python3

문제

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

키워드

  • 구현
  • 브루트포스

문제 풀이

문제 요구사항

N명의 몸무게와 키가 담긴 입력을 읽어서 각 사람의 덩치 등수를 계산하는 프로그램

  • 어떤 사람의 몸무게가 x kg이고 키가 y cm라면 이 사람의 덩치는 (x, y)로 표시한다.
  • 두 사람 A 와 B의 덩치가 각각 (x, y), (p, q)라고 할 때 x > p 그리고 y > q 이라면 우리는 A의 덩치가 B의 덩치보다 "더 크다"고 말한다.

변수 및 함수 설명

  • n : 전체 사람의 수 (2 ≤ N ≤ 50)
  • x, y : 각 사람의 몸무게와 키 (10 ≤ x, y ≤ 200)
  • arr : x, y가 저장되는 리스트
  • rank : 덩치 등수

풀이

(입력 및 선언)

  • 사람의 수를 입력받는다
  • x, y를 입력받고 arr에 2차원 배열로 저장한다

(등수 계산)

  • 이중 반복문을 돌면서 큰 수를 판단한다
  • rank 를 1로 초기화하고, 몸무게와 키 모두 다른 사람보다 작을 때 1씩 증가시킨다
  • rank를 출력한다

최종 코드

n = int(input())

arr = []

for _ in range(n):
    x, y = map(int, input().split())

    arr.append([x, y])

for i in arr:
    rank = 1
    for j in arr:
        if i[0] < j[0] and i[1] < j[1]:
            rank += 1

    print(rank, end=" ")

피드백

두 번째 반복문을 어떻게 적어야 할 지 몰라서 도움을 받았다. rank라는 변수를 하나 만들어서 index 값이 아니라 rank를 하나씩 늘려가는 것이 포인트,,

profile
I mean

0개의 댓글