문제:
입력:
출력:
풀이 방법:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | dps=[] number=int(input()) num_list=list(map(int,input().split())) for i in range(number+1): dps.append([]) for j in range(number+1): if i==j: dps[i].append(num_list[i-1]) else: dps[i].append(0) for i in range(2,len(dps)): for j in range(1,i): dps[i][j]=num_list[j-1]+max(dps[i-j][:i-j+1]) print(max(dps[-1])) | cs |
'Algorithm > Python' 카테고리의 다른 글
[BOJ]9461.파도반 수열 (0) | 2019.04.25 |
---|---|
[BOJ]9095. 1,2,3 더하기 (0) | 2019.04.24 |
[BOJ]10844. 쉬운 계단 수 (0) | 2019.04.22 |
[BOJ]1149. RGB거리 (0) | 2019.04.21 |
[BOJ]2163. 초콜릿 자르기 (0) | 2019.04.20 |