题目1480:最大上升子序列和

来源:互联网 发布:中国历史故事网软件 编辑:程序博客网 时间:2024/05/17 06:50
#include<stdio.h>#define N 1000int main(){    int n;    int A[N],DP[N];    while(scanf("%d",&n)!=EOF){        for(int i=0;i<n;i++){scanf("%d",&A[i]);DP[i]=A[i];}         for(int i=0;i<n;i++){            for(int j=0;j<i;j++){                if(A[j]<A[i]&&DP[j]+A[i]>DP[i])   DP[i]=DP[j]+A[i];            }        }        //        int Max=0;        for(int i=0;i<n;i++)            if(DP[i]>Max)Max=DP[i];        printf("%d\n",Max);    }     return 0;}/**************************************************************    Problem: 1480    User: cust123    Language: C++    Result: Accepted    Time:30 ms    Memory:1020 kb****************************************************************/

0 0
原创粉丝点击