您的位置:首页 > 其它

最大上升子序列长度

2013-01-12 21:14 197 查看
//最长上升子序列 ,今晚偶尔想起来做了下,已经OJ测试
#include <iostream>
#include <cstring>
using namespace std;

int a[100];
//a数组记录以j为结尾的 长度
void solve(int *ans,int n)
{
int i,j,k;
a[0] = 1;
for(i=1; i<n; i++)//必须从头开始算
{
for(j=0; j<i; j++)
{
if(ans[j]<ans[i]&&(a[i]<(a[j]+1)))
a[i] = a[j] + 1;
}
}
}

int main()
{
int i,j,k;
int ans[100];
int n;
while(cin>>n)
{
memset(a,0,sizeof(a));
for(i=0; i<n; i++)
cin>>ans[i];
solve(ans,n);
cout<<a[n-1]<<endl;
}
return 0;
}


  请将不如激将!

   因为公事只自己得利了那叫谋私利,若大家都得利了,那叫谋福利!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: