最长上升子序列

来源:互联网 发布:mysql in or 编辑:程序博客网 时间:2024/06/16 12:59

例题: 

单调递增最长子序列

时间限制:3000 ms  |  内存限制:65535 KB
难度:4
描述
求一个字符串的最长递增子序列的长度
如:dabdbf最长递增子序列就是abdf,长度为4
输入
第一行一个整数0<n<20,表示有n个字符串要处理
随后的n行,每行有一个字符串,该字符串的长度不会超过10000
输出
输出字符串的最长递增子序列的长度


#include"iostream"#include"cstring"using namespace std;int main(){int t,dp[10005],rst;char a[10005];cin>>t;while(t--){rst=1;cin>>a;int len=strlen(a);for(int i=0;i<len;i++){dp[i]=1;for(int j=0;j<i;j++)    if(a[j]<a[i])   dp[i]=max(dp[i],dp[j]+1);rst=max(rst,dp[i]);}cout<<rst<<endl;}return 0;}


0 0
原创粉丝点击