반응형
https://www.acmicpc.net/problem/2217
2217번: 로프
N(1≤N≤100,000)개의 로프가 있다. 이 로프를 이용하여 이런 저런 물체를 들어올릴 수 있다. 각각의 로프는 그 굵기나 길이가 다르기 때문에 들 수 있는 물체의 중량이 서로 다를 수도 있다. 하지만
www.acmicpc.net
1. 문제
여러 로프와 각 로프의 최대중량이 주어질 때 해당 로프들의 조합으로 들 수 있는 최대 중량을 구하라.
2. 접근
여러 로프들에서 들 수 있는 중량이 가장 작은 로프부터 하나씩 제외해가며 최대중량을 비교한다.
3. 소스코드
n = int(input())
rope = [int(input()) for _ in range(n)]
def w(rope, n):
rope.sort()
max_w = -999
for i in rope:
if max_w < i * n:
max_w = i * n
n -= 1
return max_w
print(w(rope, n))
반응형
'컴퓨터공학 > 알고리즘' 카테고리의 다른 글
[백준] 1120. 문자열 (0) | 2020.05.09 |
---|---|
[백준] 10610. 30 (0) | 2020.05.09 |
[백준] 11399. ATM (0) | 2020.05.09 |
DP. 동전 거스름돈과 이항계수 (0) | 2020.05.01 |
동적계획법 소개 (0) | 2020.05.01 |