34 lines
644 B
C++
34 lines
644 B
C++
// ID:1285 TITLE:最大上升子序列和
|
|
|
|
#include <iostream>
|
|
|
|
const int MAX = 1001;
|
|
|
|
int main()
|
|
{
|
|
int n, a[1001], b[1001], total = -1;
|
|
std::cin >> n;
|
|
for (int i = 1; i <= n; i++)
|
|
{
|
|
std::cin >> a[i];
|
|
b[i] = a[i];
|
|
}
|
|
for (int i = 0; i <= n; i++)
|
|
{
|
|
for (int j = 0; j < i; j++)
|
|
{
|
|
if (a[i] > a[j])
|
|
{
|
|
if (a[i] > a[j])
|
|
{
|
|
b[i] = std::max(b[i], b[j] + a[i]);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
for (int i = 1; i <= n; i++)
|
|
{
|
|
total = std::max(total, b[i]);
|
|
}
|
|
std::cout << total;
|
|
} |