- [알고리즘][파이썬] 백준_7568_덩치2021년 12월 05일 17시 47분 08초에 업로드 된 글입니다.작성자: DandyNow728x90반응형
"만일 자신보다 더 큰 덩치의 사람이 k명이라면 그 사람의 덩치 등수는 k+1이 된다."
이 문제의 핵심이 되는 문장이다.
덩치 비교 시 몸무게와 키를 각각 비교하게 되는데,
둘 다 비교 대상의 우위에 있다면 상위 등수,
둘 중 하나라도 우위에 있다면 동일한 등수,
둘 두 적다면 하위 등수에 속하게 된다.
사용한 변수 명
N : 총 인원수
lst : 몸무게, 키 리스트(list)
x : 몸무게
y : 키
cnt : 등수 카운트(count)
rst : 등수 결과(result)
제출 코드
# 조건에 해당되는 경우 등수 +1 누적(결과: 맞았습니다!) N = int(input()) lst = [] for _ in range(N): x, y = map(int, input().split()) lst.append([x, y]) rst = [] for i in range(len(lst)): cnt = 1 for j in range(len(lst)): if lst[i][0] < lst[j][0] and lst[i][1] < lst[j][1]: cnt += 1 rst.append(cnt) print(' '.join(map(str, rst)))
해결한 방법
"만일 자신보다 더 큰 덩치의 사람이 k명이라면 그 사람의 덩치 등수는 k+1이 된다."
이 조건에 의해서 몸무게와 키가 모두 큰 경우에만
디폴트 등수(cnt = 1)에서 +1을 누적한다.
조건문으로 표현하면 다음과 같다.
if lst[i][0] < lst[j][0] and lst[i][1] < lst[j][1]:
cnt += 1728x90반응형'CS > 코딩 테스트' 카테고리의 다른 글
[Python] 점프 투 파이썬_종합문제_Q13_DashInsert 함수 (0) 2021.12.09 [알고리즘][파이썬] 백준_1018_체스판 다시 칠하기 (0) 2021.12.07 [알고리즘][파이썬] 백준_2231_분해합 (0) 2021.12.03 [알고리즘][파이썬] 백준_2798_블랙잭 (0) 2021.12.02 [알고리즘][파이썬] 백준_11729_하노이 탑 이동 순서 (0) 2021.11.30 댓글