백준 2217 로프 파이썬
백준 2217번 로프 풀이
접근방식
- rope 리스트에 로프 무게를 저장하기
- rope 리스트를 내림차순으로 정렬하기(reverse=True)
- 문제 조건에 따라 k/w 이므로 for문을 통해 로프의 개수와 중량을 새로운 리스트에 저장해주기
- max값을 출력하기
import sys
input = lambda: sys.stdin.readline().rstrip()
n = int(input())
rope = []
for _ in range(n):
rope.append(int(input()))
# 내림차순 정렬
rope.sort(reverse=True)
weight = []
# 입력 예시와 같이 10, 15가 주어졌을 경우,
# 15 * 1 = 15 , 10 * 2 = 20 이다.
# 예를 들어, 20, 30, 40이 주어졌다고 할 때,
# 40 * 1 = 40 , 30 * 2 = 60 , 20 * 3 = 60 이므로 정답은 60이 된다.
for i in range(n):
weight.append(rope[i]*(i+1))
print(max(weight))
해당 문제는 실버4레벨에 해당하므로 어렵지 않게 풀 수 있는 문제였습니다.
알고리즘도 모든 것과 마찬가지로 꾸준한 연습과 이해를 바탕으로 실력이 향상합니다.
Just do it & Keep steady
댓글남기기