openjudge-noi-2.6-1759:最长上升子序列

OpenJudge-Noi 2000 最长公共子上升序列 总时间限制: 10000ms 内存限制: 65536kB 描述给定两个整数序列,写一个程序求它们的最长上升公共子序列。 当以下条件满足的时候,我们将长度为N的序列S1 , S2 , . . . , SN 称为长度为M的序列A1 , A2 , . . . , AM的上升子序列: 存在 1 1 2 N j = Aij,且对于所有的1 j j+1。 输入每个序列用两行表示,第 阅读详情


总时间限制: 2000ms    内存限制: 65536kB

描述

一个数的序列bi,当b1 <b2 < ... < bS的时候,我们称这个序列是上升的。对于给定的一个序列(a1,a2, ..., aN),我们可以得到一些上升的子序列(ai1,ai2, ...,aiK),这里1 <=i1 < i2 < ... <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。

输出

最长上升子序列的长度。

样例输入

7
1 7 3 5 9 4 8

样例输出

4

来源

翻译自 Northeastern Europe 2002, Far-Eastern Subregion 的比赛试题

虽然这真的是一道特别特别水的动态规划题= =但水题也是题!!!

于是乎我就干脆就这样把代码弄上来吧。。

#include<cstdio>
int a[10010]={-10},f[10010],n;
int main()
{
	int i,j;
	scanf("%d",&n);
	a[n+1]=20000;
	for(i=1;i<=n;i++)
		scanf("%d",&a[i]);
	for(i=1;i<=n+1;i++)
		for(j=0;j<=i-1;j++)
			if(a[j]<a[i]&&f[j]>=f[i])
				f[i]=f[j]+1;
	printf("%d",f[n+1]-1);
}

 

这就是我做的一点都不酷炫的代码= =

反正就是那什么阶段最优然后全局最优那什么玩意的qwq

然后此处省略一万字= =

反正就是把前面找到的最好的解给neng过来omg原谅我的语文。。我是真的不知道怎么说= =

一次AC也是可以很容易做到的= =

CARLA仿真:自定义地图与AI车辆行为编程 CARLA仿真:自定义地图与AI车辆行为编程 ,人工智能,计算机视觉,大模型,AI,本文围绕CARLA仿真平台,介绍了其基础功能与安装方法,详解地图系统,包括预设地图的加载切换及自定义地图的创建、导入与优化。还阐述了AI车辆的创建、属性设置、销毁,以及行为控制,如交通规则遵守、路径规划、复杂行为编程和行为树应用。同时涉及传感器与车辆感知、交通场景构建、自定义地图与AI行为结合应用、高级应用,以及常见问题解决方案和学习资源,为CARLA仿真应用提供全面指导。 阅读详情

相关推荐

Python+AI能源管理实战:从电力负荷预测到智能调度的全流程开发

本系统展示了Python在能源管理领域的强大能力,通过AI技术实现了从预测到优化的智能决策闭环。随着碳中和目标的推进,智能能源系统将成为新型电力系统的核心大脑。📌 专业建议:系统部署需考虑网络安全防护,关键控制指令应设置多重验证机制!关注我的优快云账号获取能源系统安全最佳实践~下期预告:我们将探索Python在智慧医疗中的应用,开发基于多模态数据的智能诊断辅助系统。想提前获取代码?评论区留言"智慧医疗"获取GitHub源码链接!

资深全栈架构师,乐于在 优快云 分享技术见解,与大家携手共进,共攀技术巅峰! 625

信息学奥赛一本通 1281:最长上升子序列 | OpenJudge NOI 2.6 1759:最长上升子序列

【题目链接】 ybt 1281:最长上升子序列 OpenJudge 2.6 1759:最长上升子序列 【题目考点】 1. 动态规划:线性动规 【解题思路】 1. 确定状态 分析状态: 集合:上升的子序列 限制:子序列存在的区间 属性:序列长度 条件:最长 统计量:长度 状态定义: dp[i]:以第i元素为结尾的最长上升子序列的长度。 2. 确定状态转移方程 分割集合:以第i元素为结尾的上升子序列构成的集合。 子集1:对所有满足j < i的j, 如果第i元素大于第j元素,则以第j元素为结尾的上升子序

君义NOIP的博客 3136

西门子828D/840DSL数控机床产量数据采集实战:一个C#程序员的踩坑与填坑记录

本文详细记录了C#程序员在西门子828D/840DSL数控机床产量数据采集实战中的经验与教训。从硬件连接到软件配置,再到数据读取与异常处理,文章分享了工业现场编程的特殊挑战和解决方案,特别是针对数控系统的TCP/IP通信、PLC变量地址映射及数据解析等关键技术点。

weixin_42741930的博客 596

信息学奥赛一本通 1285:最大上升子序列和 | OpenJudge NOI 2.6 3532:最大上升子序列和

比如,对于序列(1,7,3,5,9,4,8),有它的一些上升子序列,如(1,7),(3,4,8)等等。注意,最长的上升子序列的和不一定是最大的,比如序列(100,1,2,3)的最大上升子序列和为100,而最长上升子序列为(1,2,3)。子集1:对所有满足j < i的j, 如果a[i]>a[j],则以第j元素为结尾的上升子序列加上第i元素,形成新的上升子序列。题目要求的是最大上升子序列的最大加和,那么就是求以每个位置为结尾的最大上升子序列的加和,即求dp数组中的最大值。2. 确定状态转移方程。

2301_82266829的博客 366

上海市大数据中心笔试模拟试卷

为帮助考生熟悉上海市大数据中心笔试的题型、考点及答题逻辑,以下整理了一份的模拟试卷,涵盖大数据专业知识、行政职业能力测试(行测)、公共基础知识(含上海本地政策)三大核心模块,并附详细答案解析。

一叶之秋的博客 1815

ESP32-CAM图像糊成马赛克?OV2640参数调优保姆级教程(亮度/对比度/饱和度)

本文提供了一份详细的ESP32-CAM图像调优教程,针对OV2640摄像头常见的图像模糊问题,从分辨率设置、亮度/对比度/饱和度调整到高级寄存器配置,帮助用户优化网页显示画质。通过代码示例和实用技巧,解决马赛克、色彩暗淡等问题,提升摄像头性能。

weixin_30410119的博客 596

Openjudge 1759:最长上升子序列

整篇文章讲的是针对严格上升的最长上升子序列,即不存在大于等于,但具体要求还是要看每一个题目的要求,需要随机应变。注意,这里不会因为数组顺序而改变结果,因为我们改变的是第一个大于当前这个数的位置。中的最后一位,那么答案就是当前数组的长度,如果不是最后一位,那么后面还有数字,可以替换掉。中第一个大于当前这个数的位置,原理就是让越后面的数字越小,使得能接的数越多。的时候,dp 的做法就很危险。的最后一个数字,那么直接接上,否则就替换在。数组当前的最后一位,如果没有能替换掉。的最长上升子序列的最小的结尾数字。

PandaLYL的博客 1268

ESP32蓝牙广播数据自定义指南:让你的设备更容易被手机发现

本文详细介绍了如何通过自定义ESP32蓝牙广播数据提升设备在手机端的可发现性。从广播数据结构、扫描响应优化到跨平台兼容性设置,提供了全面的技术指南和实战代码示例,帮助开发者解决智能硬件开发中的蓝牙连接难题。

weixin_29172201的博客 271

算法题:方便记忆的电话号码(C++)

题目: 总时间限制: 2000ms 内存限制: 65536kB 描述 英文字母(除Q和Z外)和电话号码存在着对应关系,如下所示: A,B,C -> 2 D,E,F -> 3 G,H,I -> 4 J,K,L -> 5 M,N,O -> 6 P,R,S -> 7 T,U,V -> 8 W,X,Y -> 9 标准的电话号码格...

fun_always的博客 1120

CH-x01&ICU-x0201-问答专题

CH201在近距离30cm和远距离1.8m左右测距误差是最大的,误差可能>3 cm。在中间部分测距误差是<2cm的,因为考虑到安装测试治具也存在误差,所以整个范围设置在±3cm。

nicole088的专栏 379

Android 11多窗口+分屏+APP窗口嵌套TaskView实现原理一

然而随着版本的迭代升级,google对分屏的定制差异化也越来越大,Androd 11的分屏用的是split-screen-primary和split-screen-secondary的方式,在systemui中去实现的,其定制化的灵活度不是很高,很多业务都是放到sustemui或者fw去实现,但是随着版本的升高,后面出现了TaskView来替代了老版本的分屏方式,但是Task的核心原理其实和之前的方式是一样的,TaskView来实现分屏。

qq_18420641的博客 2615

openjudge-NOI 2.6-1759 最长上升子序列

题目链接:http://noi.openjudge.cn/ch0206/1759/ 题解:   奇怪……之前博客里的o(nlogn)标程在codevs和tyvj上都能AC,偏偏它这里不行 1 #include<cstdio> 2 #define MAXN 1010 3 int n,a[MAXN],f[MAXN],ans; 4 inline int max(int...

weixin_30536513的博客 125

【YOLO11改进 - C3k2融合】C3k2融合DWRSeg二次创新C3k2_DWR:扩张式残差分割网络,提高特征提取效率和多尺度信息获取能力,助力小目标检测

【YOLO11改进 - C3k2融合】C3k2DWRSeg二次创新C3k2_DWR:扩张式残差分割网络,提高特征提取效率和多尺度信息获取能力,助力小目标检测

专注于图像领域,主要研究内容包括计算机视觉和深度学习,特别是在图像分类、目标检测和图像生成等方面有深入的研究和实践经验。 1054

noi.openjudge 1759:最长上升子序列

一个数的序列bi,当$b_1 < b_2 < ... < b_S$的时候,我们称这个序列是上升的。对于给定的一个序列$(a_1, a_2, ..., a_N)$,我们可以得到一些上升的子序列$(a_{i1}, a_{i2}, ..., a_{iK})$,这里$1 <= i_1 < i_2 < ... < i_K <= N$。比如,对于序列(1, 7, 3, 5, 9, 4, 8),有它的一些上升子序列,如(1, 7), (3, 4, 8)等等。这些子序列中最长的长度是4,比如子序列(1, 3, 5, 8).

smartzxf的博客 340

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

1759:最长上升子序列(C语言)(noi.openjudge)

比如,对于序列(1, 7, 3, 5, 9, 4, 8),有它的一些上升子序列,如(1, 7), (3, 4, 8)等等。这些子序列中最长的长度是4,比如子序列(1, 3, 5, 8).输入的第一行是序列的长度N (1 <= N <= 1000)。第二行给出序列中的N个整数,这些整数的取值范围都在0到10000。你的任务,就是对于给定的序列,求出最长上升子序列的长度。的时候,我们称这个序列是上升的。对于给定的一个序列(),我们可以得到一些上升的子序列(最长上升子序列的长度。

一颗草莓~( ̄▽ ̄~)~的博客 438

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

【DP经典】noi openjudge 2.6 最长上升子序列

题目: 1759:最长上升子序列 总时间限制:  2000ms  内存限制:  65536kB 描述一个数的序列bi,当b1 b2 bS的时候,我们称这个序列是上升的。对于给定的一个序列(a1, a2, ..., aN),我们可以得到一些上升的子序列(ai1, ai2, ..., aiK),这里1 i1 i

Master.Yi的博客 511

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

最长上升子序列的题

1.noi 1759:最长上升子序列http://noi.openjudge.cn/ch0206/1759/ 转载于:https://www.cnblogs.com/ZGQblogs/p/9380869.html

weixin_30375247的博客 97

openjudge动规刷题攻略----第一弹

基本算法之动态规划(1~4) 1481 Maximumsum 题目大意:求两个最大连续子序列和的和。 解题思路 搞起来很玄妙,正序、倒序分别来一遍DP: sum_1[i]表示前i个数里的最大连续子序列和,sum_2[i]表示后i个数里的最大连续子序列和。至于为啥这样跑……反正我是想不出更好的方法了。t1存的是包含当前数a[i]的最大序列和,而t2存的是sum_1[i],每次先更新t1再更

zero_from的博客 689

电子学会 C语言 4级 10 、最长公共上升子序列(LCIS)

1306:最长公共子上升序列 信息学奥赛一本通(C++版)在线评测系统 2.6基本算法之动态规划 2000:最长公共子上升序列 OpenJudge - 2000:最长公共子上升序列 2999:最长公共子上升序列 OpenJudge - 2999:最长公共子上升序列 zoj2432 hdoj1423 最长公共上升子序列(LCIS) https://www.cnblogs.com/wd-one/p/4470844.html 2000:最长公共子上升序列——动态规划

青少年趣味编程 343

NOI / 2.6基本算法之动态规划——1759:最长上升子序列

比如,对于序列(1, 7, 3, 5, 9, 4, 8),有它的一些上升子序列,如(1, 7), (3, 4, 8)等等。这些子序列中最长的长度是4,比如子序列(1, 3, 5, 8).输入的第一行是序列的长度N (1 <= N <= 1000)。写法1:状态定义为以i为开头的最长上升子序列的长度(原作者:Trigger_G,按本作者的编程习惯略微改动,侵删)写法2:状态定义为以i为结尾的最长上升子序列的长度(原创)你的任务,就是对于给定的序列,求出最长上升子序列的长度。的时候,我们称这个序列是上升的。

yuzhouhunter的博客 236

1759:最长上升子序列

比如,对于序列(1, 7, 3, 5, 9, 4, 8),有它的一些上升子序列,如(1, 7), (3, 4, 8)等等。这些子序列中最长的长度是4,比如子序列(1, 3, 5, 8).所以比较dp[j]+1(以num[j]为最大数的最长上升子序列新添一个dp[i],所以再加1)和以num[i]为最大数的最长上升子序列。for循环,如果num[i] > num[j],则要判断是否将它加入以num[i]为最大数的上升子序列。你的任务,就是对于给定的序列,求出最长上升子序列的长度。最长上升子序列的长度。

zvecmathlijt的博客 240

NOI 1759:最长上升子序列(C++) 动态规划

题目:输出最长上升的子序列长度 思路:用一个数组result[]来存储子问题结果,数组中每个数值result[i]对应子序列[0~i]的最长上升子序列长度。自底向上,从result[0]开始动态更新到result[n-1],result[i]的值应为result[0]~result[j]中满足nums[i]>nums[j](j=0~i-1)条件的最大值+1,维护maxLen即为所求。

赞美月亮的专栏 3153

1759:最长上升子序列——动态规划

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

小白之比白更白的博客 297

最大上升子序列和

题目描述: 一个数的序列bi,当b1 你的任务,就是对于给定的序列,求出最大上升子序列和。注意,最长的上升子序列的和不一定是最大的,比如序列(100, 1, 2, 3)的最大上升子序列和为100,而最长上升子序列为(1, 2, 3)。 输入: 输入包含多组测试数据。 每组测试数据由两行组成。第一行是序列的长度N (1 输出: 对于每组测试数据,输出其最大上升子序列和

hackerzchao 2737
上一篇: openjudge-noi-2.5-2971:抓住那头牛
下一篇: openjudge-noi-2.6-2718:移动路线
dogeding
博客等级 码龄10年 31粉丝 109原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值