最长上升子序列tyvj1049

来源:互联网 发布:如何优化企业资本结构 编辑:程序博客网 时间:2024/06/05 20:31

P1049 最长不下降子序列
时间: 1000ms / 空间: 131072KiB / Java类名: Main
描述

求最长不下降子序列的长度
输入格式

第一行为n,表示n个数
第二行n个数
输出格式

最长不下降子序列的长度
测试样例1

输入

3
1 2 3
输出

3
备注

N小于5000
for each num <=maxint
用dp[i]表示已i结尾的最大长度
O(n^2)

#include<iostream>using namespace std;int dp[5001],a[5001],n;int ans=0;//保存最大值cin>>n;for(int i=1;i<=n;i++){        dp[i]=1;        for(int j=1;j<i;j++)        {        if(a[j]<a[i]){            dp[i]=max(dp[i],dp[j]+1);            }        }        ans=max(ans,dp[i]);    }    cout<<ans<<endl;    return 0;}
原创粉丝点击