九度OJ 1112:拦截导弹 (DP、最长下降子序列)
2024-08-24 12:36:13
时间限制:1 秒
内存限制:32 兆
特殊判题:否
提交:3124
解决:1525
- 题目描述:
-
某国为了防御敌国的导弹袭击,开发出一种导弹拦截系统。但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到敌国的导弹来袭,并观测到导弹依次飞来的高度,请计算这套系统最多能拦截多少导弹。拦截来袭导弹时,必须按来袭导弹袭击的时间顺序,不允许先拦截后面的导弹,再拦截前面的导弹。
- 输入:
-
每组输入有两行,第一行,输入雷达捕捉到的敌国导弹的数量k(k<=25),
第二行,输入k个正整数,表示k枚导弹的高度,按来袭导弹的袭击时间顺序给出,以空格分隔。
- 输出:
-
每组输出只有一行,包含一个整数,表示最多能拦截多少枚导弹。
- 样例输入:
-
8
300 207 155 300 299 170 158 65
- 样例输出:
-
6
思路:
该题的本质是求最长下降子序列。可以用动态规划来做,最好的算法复杂度应该是O(nlogn)的。
我这个代码是最早时候写的,算法复杂度O(n2)。思路比较简单。
代码:
#include <stdio.h> #define N 25 int main(void)
{
int n, i, j;
int a[N], k[N]; while (scanf("%d", &n) != EOF)
{
for(i=0; i<n; i++)
scanf("%d", &a[i]); k[0] = 1;
for (i=1; i<n; i++)
{
k[i] = 1;
for (j=i-1; j>=0; j--)
{
if (a[j] >= a[i] && k[j]+1 > k[i])
k[i] = k[j] + 1;
}
} int max = 0;
for (i=0; i<n; i++)
max = k[i]>max ? k[i] : max;
printf("%d\n", max);
} return 0;
}
/**************************************************************
Problem: 1112
User: liangrx06
Language: C
Result: Accepted
Time:0 ms
Memory:912 kb
****************************************************************/
最新文章
- 干货分享:MySQL之化险为夷的【钻石】抢购风暴
- [转]javascript eval函数解析json数据时为什加上圆括号eval(";(";+data+";)";)
- flexigrid扩展(添加全选,格式化表单)
- OpenCV count the number of connected camera 检测连接的摄像头的数量
- 清除浮动1-使用:after 伪元素
- Android IOS WebRTC 音视频开发总结(三八)-- tx help
- 在Linux终端执行clear或top命令时出现:&#39;xterm&#39;: unknown terminal type
- supesite 相关 修改
- C# 窗体程序入门 之计算器
- MySQL数据引擎
- vue中的数据监听以及数据交互
- gcc编译基本用法~1
- Python:Day19 正则表达式补充
- postman(三):添加断言
- LabVIEW(十六):多列列表框控件
- Best quotes from The Vampire Diary(《吸血鬼日记》经典台词)
- instrument之Time Profiler总结
- 机器学习入门-数值特征-对数据进行log变化
- nodeJs 接收请求参数和发送请求参数
- drawCall_01
热门文章
- 用jquery写的图片懒加载
- 转 浅谈C++中指针和引用的区别
- 24深入理解C指针之---指针和数组
- yii使用bootstrap分页样式
- 拖拽排序插件 ---- Dragula
- javascript对象初探 (五)--- 函数对象的属性
- iOS应用崩溃日志揭秘
- 【spring mvc】后台spring mvc接收List参数报错如下:org.springframework.beans.BeanInstantiationException: Failed to instantiate [java.util.List]: Specified class is an interface
- httplib 和 httplib2区别之 gzip解压
- Geometry Shader 【转】