반응형
문제
https://www.acmicpc.net/problem/2217
코드
import sys
input = sys.stdin.readline
n = int(input())
rope = sorted([int(input()) for i in range(n)], reverse = True)
res = list()
for i in rope:
res.append(i * (len(res) + 1))
print(max(res))
설명
우선 n과 로프의 값을 각각 입력받는다.
이후 로프를 내림차순으로 정렬한다.
(가장 한계치가 낮은 로프) * (로프의 수) = (최대 무게) 라는 식이 성립한다.
따라서 로프를 순차로 돌면서 계산한 값중 가장 큰 값을 출력하면 된다.
반응형
'개발 연습장 > 백준 문제풀이' 카테고리의 다른 글
[파이썬, Python] 백준 7785: 회사에 있는 사람 (0) | 2023.04.26 |
---|---|
[파이썬, Python] 백준 14501: 퇴사 (0) | 2023.04.25 |
[파이썬, Python] 백준 1904: 01타일 (0) | 2023.04.21 |
[파이썬, Python] 백준 9655: 돌 게임 (0) | 2023.04.20 |
[파이썬, Python] 백준 1912: 연속합 (0) | 2023.04.19 |