https://www.acmicpc.net/problem/11055
11055번: 가장 큰 증가 부분 수열
수열 A가 주어졌을 때, 그 수열의 증가 부분 수열 중에서 합이 가장 큰 것을 구하는 프로그램을 작성하시오. 예를 들어, 수열 A = {1, 100, 2, 50, 60, 3, 5, 6, 7, 8} 인 경우에 합이 가장 큰 증가 부분 수�
www.acmicpc.net
import copy
N = int(input())
A = list(map(int, input().split()))
dp = copy.deepcopy(A)
for i in range(1, N):
for j in range(i):
if A[j] < A[i]:
dp[i] = max(dp[i], dp[j]+A[i])
print(max(dp))
'알고리즘 > 백준 (Pyhthon)' 카테고리의 다른 글
[알고리즘] 백준 1107 리모컨 / python, 브루트포스 (0) | 2020.06.14 |
---|---|
[알고리즘] 백준 1439 뒤집기 / python, greedy (0) | 2020.06.14 |
[알고리즘] 백준 16768 Mooyo Mooyo / python, dfs, simulation (0) | 2020.06.10 |
[알고리즘] 백준 9050 / python, dp (0) | 2020.05.28 |
[알고리즘] 백준 12100 2048(Easy) / python, dfs (1) | 2020.03.16 |