Python으로 구현한 2217번 로프 문제 풀이입니다.
https://www.acmicpc.net/problem/2217
n = int(input())
data = []
for _ in range(n) :
data.append(int(input()))
data.sort()
max_value = 0
for i in range(n) :
max_value = max(max_value, data[i] * (n - i))
print(max_value)
1. n개의 중량을 입력받아 data 리스트에 할당하고, 오름차순으로 정렬한다.
2. 정렬된 중량값을 차례대로 확인하여, 만약 (현재의 중량 * 이후에 남은 중량 개수) 값이 max_value 보다 크다면 그 max_value를 갱신한다.
'백준(Python) 풀이 > 그리디 알고리즘' 카테고리의 다른 글
백준(Python) 9576번 책 나눠주기 풀이 (0) | 2022.10.15 |
---|---|
백준(Python) 1931번 회의실 배정 풀이 (0) | 2022.09.28 |
백준(Python) 12927번 배수 스위치 풀이 (0) | 2021.12.29 |
백준(Python) 3135번 라디오 풀이 (0) | 2021.12.19 |
백준(Python) 20044번 Project Teams 풀이 (0) | 2021.12.19 |