首页 > 其他分享 >1815 最长上升子序列

1815 最长上升子序列

时间:2024-08-23 15:21:51浏览次数:11  
标签:1815 int max 样例 cin 序列 最长 dp

描述

一个数的序列 bi​,当 b1​<b2​<...<bS​ 的时候,我们称这个序列是上升的。对于给定的一个序列 (a1​,a2​,...,aN​),我们可以得到一些上升的子序列(ai1​,ai2​,...,aiK​),这里1≤i1​,1≤i2​,...,1≤ik​≤N.比如,对于序列 (1,7,3,5,9,4,8),有它的一些上升子序列,如(1,7),(3,4,8)等等。这些子序列中最长的长度是4,比如子序列(1,3,5,8)。
你的任务,就是对于给定的序列,求出最长上升子序列的长度。

输入描述

输入的第一行是序列的长度 N(1≤N≤1000)。第二行给出序列中的 N 个整数,这些整数的取值范围都在 0 到 10000。

输出描述

最长上升子序列的长度。

样例输入 1 

7
1 7 3 5 9 4 8

样例输出 1 

4

#include<bits/stdc++.h>
using namespace std;
int n,m,a[1005],dp[1005];
int main(){
    cin>>n;
    for(int i=1;i<=n;i++){
        cin>>a[i];
    }
    dp[1]=1;
    for(int i=2;i<=n;i++){
        dp[i]=1;
        for(int j=1;j<i;j++){
           
            if(a[i]>a[j]){
                dp[i]=max(dp[j]+1,dp[i]);
            
            }
            m=max(m,dp[i]);
        }
    }
 
    cout<<m;
    return 0;
}

标签:1815,int,max,样例,cin,序列,最长,dp
From: https://blog.csdn.net/2401_86852582/article/details/141465669

相关文章

  • 卡特兰数、Prufer 序列、BSGS 总结
    卡特兰数定义给定\(n\)个\(0\)和\(n\)个\(1\),它们构成一个长度为\(2n\)的排列,满足任意前缀中\(0\)的个数都不少于\(1\)的个数的序列的数量为卡特兰数列。显然\(H_0=H_1=1\)。(\(H\)为卡特兰数列)通项公式:\[H_n=\frac{\dbinom{2n}{n}}{n+1}\quad(n\ge2,n\in\math......
  • 线性dp:最长公共子序列
    最长公共子序列本文讲解的题与leetcode1143.最长公共子序列这题一样,阅读完可以挑战一下。力扣题目链接题目叙述:给定两个字符串,输出其最长公共子序列,并输出它的长度输入:ADABEC和DBDCA输出:DBC3解释最长公共子序列是DBC,其长度为3动态规划思路:我们这题先构建一个模......
  • 线性dp:最长公共子串
    最长公共子串本文讲解的题与leetcode718.最长重复子数组,题意一模一样,阅读完本文以后可以去挑战这题。力扣链接题目叙述:给定两个字符串,输出其最长公共子串的长度。输入ABACCBAACCAB输出3解释最长公共子串是ACC,其长度为3。与最长公共子序列的区别公共子串:字符必须......
  • 序列划分(区间DP)
    题目描述\(n\)个人,每个人手上有一个数\(a_i\)。将这些人分成若干组,组没有编号,要求每组人手上的数字之和都是质数。求合法的分组方案数。输入第一行一个正整数\(T(1\leqT\leq5)\),表示测试数据的组数。每组数据第一行一个正整数\(n(1\leqn\leq15)\)。每组数据第二行\(n\)......
  • PHP反序列化一
    1.序列化/反序列化序列化:对象转化为字节流反序列化:字节流转化为对象二者相互结合,可以轻松的存储和传输数据,使程序更具维护性2.反序列化漏洞原因是程序没有对用户输入的反序列化字符串进行检测,导致反序列化过程可以被恶意控制,进而造成代码执行、getshell等一系列不可控的......
  • 反序列化刷题(二)
    反序列化刷题web259(SSRF)1、explod(',',"hello,ju,hey"):把字符串以逗号为判断点分为若干个数组,hellojuhey2、array_pop($x):删除数组中的最后一个元素1、$_SERVER['HTTP_X_FORWARDED_FOR']用来获取数据包的IP地址;我们目标要ip=127.0.0.1;这里可以用x-forwarded-for:127.0.0.1......
  • [工具推荐]Hessian反序列化漏洞利用工具分享
    如果觉得该文章有帮助的,麻烦师傅们可以搜索下微信公众号:良月安全。点个关注,感谢师傅们的支持。免责声明本号所发布的所有内容,包括但不限于信息、工具、项目以及文章,均旨在提供学习与研究之用。所有工具安全性自测。如因此产生的一切不良后果与文章作者和本公众号无关。如有涉......
  • 【题库】—— 求极差 / 最大跨度值 & 最长连号 & 质因数分解
    一、求极差/最大跨度值#include<bits/stdc++.h>usingnamespacestd;intmain(){ intn,tmp,mx=-10086,mn=10086; scanf("%d",&n); for(inti=1;i<=n;i++) { inttmp; scanf("%d",&tmp); mx=max(tmp,mx); mn=min(tmp,mn); } p......
  • 1092. 最短公共超序列
    非常好的一道理解LCS本质的题目classSolution{public:stringlongestCommonSubsequence(conststringstr1,conststringstr2){intm=str1.length();intn=str2.length();//创建一个二维数组来存储LCS的长度vecto......
  • leetcode面试经典150题- 3. 无重复字符的最长子串
    https://leetcode.cn/problems/longest-substring-without-repeating-characters/description/?envType=study-plan-v2&envId=top-interview-150  packageleetcode150import"testing"funcTestLengthOfLongestSubstring(t*testing.T){s:=&qu......