动态规划---最大连续子序列

#include <iostream>
#include <vector>
#include <algorithm>

using namespace std;
const int maxn = 100;

int main()
{
    int n;
    cin >> n;
    vector<int>datas;
    int dp[maxn] = { 0 };
    while (n--)
    {
        int tem;
        cin >> tem;
        datas.push_back(tem);
    }
    for (int i = 0; i < datas.size(); ++i)
    {
        dp[i] = max(datas[i]+dp[i-1], datas[i]);
    }
    int m=0;
    for (int i = 0; i < datas.size(); ++i)
    {
        if (dp[i] > m) m = dp[i];
    }
    cout << m << endl;
    system("pause");
    return 0;
}

 

posted @ 2017-05-19 09:51  babyking1  阅读(108)  评论(0编辑  收藏  举报