hdu 1087 最大上升子序列和

题意:求最大上升子序列和

#include<iostream>
using namespace std;
int main()
{
    int n,a[1001],b[1001],max;
    while(cin>>n&&n!=0)
    {
        for(int i=1;i<=n;i++)
            cin>>a[i];
        b[1]=a[1];
        for(i=2;i<=n;i++)
        {
            max=0;
            for(int j=1;j<i;j++)
                if(a[i]>a[j]&&b[j]>max)
                    max=b[j];
            b[i]=a[i]+max;
        }
        max=0;
        for(i=1;i<=n;i++)
            if(b[i]>max)
                max=b[i];
        cout<<max<<endl;
    }
    return 0;
}
posted @ 2014-05-03 16:45  _一千零一夜  阅读(144)  评论(0编辑  收藏  举报