코팅테스트/백준 문제 모음
백준 2217번 파이썬 문제풀이(로프)
유지광이
2022. 5. 5. 21:31
728x90
https://www.acmicpc.net/problem/2217
2217번: 로프
N(1 ≤ N ≤ 100,000)개의 로프가 있다. 이 로프를 이용하여 이런 저런 물체를 들어올릴 수 있다. 각각의 로프는 그 굵기나 길이가 다르기 때문에 들 수 있는 물체의 중량이 서로 다를 수도 있다. 하
www.acmicpc.net
위 문제는 그리디적으로 접근해야하는데 실버4 치고는 처음에 사실 생각하기 꽤 어려웠다.
풀이법은 우선 오름차순 정렬한뒤 젤 작은값 * 총개수 , 그다음작은값 * (총개수 - 1) , ... 와같은식으로 계산한다음 가장 큰 값을 출력하는 식으로 접근하면 된다. 해당 문제의 증명은 각자 다들 잘 생각해보기 바란ㄷㅏ........
import sys
input = sys.stdin.readline
N = int(input())
rope = [int(input()) for _ in range(N)]
rope.sort()
ans = 0
for i in rope:
if ans < i * N:
ans = i * N
N -= 1
print(ans)
728x90