For Programmer
백준 2217번 파이썬 문제풀이(로프) 본문
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
'코팅테스트 > 백준 문제 모음' 카테고리의 다른 글
백준 14247번 파이썬 문제풀이(나무 자르기) (0) | 2022.05.05 |
---|---|
백준 2847번 파이썬 문제풀이(게임을 만든 동준이) (0) | 2022.05.05 |
백준 1789번 파이썬 문제풀이(수들의 합) (0) | 2022.05.05 |
백준 24956번 파이썬 문제풀이(나는 정말 휘파람을 못 불어) (0) | 2022.05.02 |
백준 16472번 파이썬 문제풀이(고냥이) (0) | 2022.05.02 |
Comments