hdu 1087dp裸题

http://acm.hdu.edu.cn/showproblem.php?pid=1087

代码如下:

#include"stdio.h"
#include"string.h"

int a[1005],sum[1005];
int main( )
{
    int n,i,j,max;
    while(scanf("%d",&n)&&n!=0)
    {
        max=0;
        memset(sum,0,sizeof(sum));
        for(i=1;i<=n;i++)
        {
            scanf("%d",&a[i]);
            for(j=0;j<i;j++)
                if(sum[j]+a[i]>sum[i]&&a[i]>a[j])
                    sum[i]=sum[j]+a[i];
        }
        for(i=1;i<=n;i++)
            if(max<sum[i])
                max=sum[i];
        printf("%d\n",max);
    }
    return 0;
}
原文地址:https://www.cnblogs.com/chaosheng/p/2580056.html