A - Super Jumping! Jumping! Jumping!

题目链接:http://acm.hust.edu.cn/vjudge/contest/126708#problem/A

英语题,大致的意思是:输入有多组。每组的第一个数为本组所含的个数,题目让我们求的就是最大递增子序列。

解题思考:用两重for循环。

代码如下:

#include<cstdio>
#include<iostream>
#include<cstring>
using namespace std;
int main()
{
     int n,a[10005],i,j,b[10005];
     while(scanf("%d",&n)&&n)
     { for(i=1;i<=n;i++)
               scanf("%d",&a[i]),b[i]=a[i];
               int maxx=-32764;
          for(i=1;i<=n;i++)
          {
             for(j=1;j<i;j++)
                  if(a[i]>a[j]) b[i]=max(a[i]+b[j],b[i]);
             maxx=max(b[i],maxx);
          }
          printf("%d\n",maxx);

     }
     return 0;
}

 

posted @ 2016-08-13 09:54  头像好帅  阅读(145)  评论(0编辑  收藏  举报