개발 연습장/백준 문제풀이

[파이썬, Python] 백준 2217: 로프

LooanCheong 2023. 4. 24. 11:19
반응형

문제

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

 

2217번: 로프

N(1 ≤ N ≤ 100,000)개의 로프가 있다. 이 로프를 이용하여 이런 저런 물체를 들어올릴 수 있다. 각각의 로프는 그 굵기나 길이가 다르기 때문에 들 수 있는 물체의 중량이 서로 다를 수도 있다. 하

www.acmicpc.net

코드

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과 로프의 값을 각각 입력받는다.

이후 로프를 내림차순으로 정렬한다.
(가장 한계치가 낮은 로프) * (로프의 수) = (최대 무게) 라는 식이 성립한다.

따라서 로프를 순차로 돌면서 계산한 값중 가장 큰 값을 출력하면 된다.

반응형