POJ 2533 最长上升子序列

【题目链接】

动态规划,不懂的话看这篇文章的思路【链接】

#include<iostream>
#include<algorithm>
#include<cstring> 
using namespace std;
int main()
{
    int i,j,n;
    cin>>n;
    int dp[1005],maxs[1005];
    memset(maxs,0,sizeof(maxs));
    for (i=1;i<=n;i++)
    cin>>dp[i];
    maxs[1]=1;
    for (i=2;i<=n;i++)
    {
        for (j=1;j<i;j++)
        {
            if (dp[j]<dp[i])
            maxs[i]=max(maxs[i],maxs[j]+1);
        }
        if (maxs[i]==0)
        maxs[i]=1;
    }
    sort(maxs,maxs+n+1);
    cout<<maxs[n];
}
全部评论

相关推荐

07-09 12:12
门头沟学院 Java
5月底投简历7月初开奖收获秋招第一个offer,虽然白菜价,但至少能保底了
土木转行ing:土木博士想转图像,最后拿了 tp 提前批 sp 最低档,感觉性价比不高
TP-LINK开奖132人在聊
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务