1322:【例6.4】拦截导弹问题(Noip1999)

信息学奥赛一本通题目解析:1322:【例6.4】拦截导弹问题(Noip1999) 【题目描述】某国为了防御敌国的导弹袭击,开发出一种导弹拦截系统,但是这种拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到敌国的导弹来袭,由于该系统还在试用阶段。所以一套系统有可能不能拦截所有的导弹。输入导弹依次飞来的高度(雷达给出的高度不大于30000的正整数)。计算要拦截所有导弹最小需要配备多少套这种导弹拦截系统。【输入】n颗依次飞来的高度(1≤n≤1000)。【输出】要拦截所有导弹最小配备的系统数k。【输入样例】 阅读详情

【题目描述】

某国为了防御敌国的导弹袭击,开发出一种导弹拦截系统,但是这种拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到敌国的导弹来袭,由于该系统还在试用阶段。所以一套系统有可能不能拦截所有的导弹。

输入导弹依次飞来的高度(雷达给出的高度不大于30000的正整数)。计算要拦截所有导弹最小需要配备多少套这种导弹拦截系统。

【输入】

n颗依次飞来的高度(1≤n≤1000)。

【输出】

要拦截所有导弹最小配备的系统数k。

【输入样例】

389 207 155 300 299 170 158 65

【输出样例】

2

【提示】

输入:导弹高度: 4  3  2

输出:导弹拦截系统k=1

#include<bits/stdc++.h>
using namespace std;
int s[1005];
int l[1005];
int main()
{
    int n;
    n=1;
    memset(s,0,sizeof(s));
    memset(l,0,sizeof(l));
    while(cin>>s[n])
    {
        n++;
    }
    int k=1;
    l[k]=s[1];
    int p=0;
    for(int i=2;i<n;i++)
    {
        p=0;//每次都要设置为0,
        for(int j=1;j<=k;j++)//一共有k套系统
        {
            if(l[j]>=s[i])//从k套系统选择
            {
                if(p==0)
                    p=j;
                else if(l[j]<l[p]) p=j;//贪心,选择最小系统中最小的值,然后后面会把这个比最小系统还小的值赋值给这个最小系统的最小值
            }
        }
        if(p==0)
        {
            k++;
            l[k]=s[i];
        }
        else
        {
            l[p]=s[i];
        }
    }
    cout<<k<<endl;
    return 0;
}

分析:

1.首先这题是贪心,是贪心从k套系统选择最小的系统来判断选择哪个系统比如说这个的案例最小都是 155 和 65 当出现一个下降    数列最小是66 的时候我们应该选择65这个系统

2.解题过程:

 a.把第一个l[1]设置为第一个系统,如果第二个导弹比第一个小哪l[1]=s[2]

 c.当有k个系统的时候就是每次来一个导弹就要比较最小的系统这个数与这个导弹的值,如果最小系统不小于这个导弹那么就是把   这个导弹的值赋值给最小系统,这里的p用法可以了解一下

1322:【例6.4】拦截导弹问题(Noip1999) 2020-12-01 1322:【例6.4】拦截导弹问题(Noip1999) 时间限制: 1000 ms 内存限制: 65536 KB【题目描述】 某国为了防御敌国的导弹袭击,开发出一种导弹拦截系统,但是这种拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到敌国的导弹来袭,由于该系统还在试用阶段。所以一套系统有可能不能拦截所有的导弹。 输入导弹依次飞来的高度(雷达给出的高度不大于30000的正整数)。计算要拦截所有导弹最小需要配备多少套这种导弹拦截... 阅读详情

相关推荐

突破III-V/硅混合集成的挑战:UTC光电探测器能带工程仿真实践

本文探讨了UTC光电探测器在III-V/硅混合集成中的能带工程仿真实践,通过Ansys Lumerical平台实现多物理场仿真,解决晶格失配和能带不连续性等关键挑战。文章详细介绍了FDTD光学仿真和CHARGE电学仿真方法,优化器件性能,提升响应度和带宽,为高速光通信和量子计算提供技术支持。

weixin_29219539的博客 296

信息学奥赛一本通 1322:【例6.4】拦截导弹问题(Noip1999)

【题目链接】 ybt 1322:【例6.4】拦截导弹问题(Noip1999) 【题目考点】 1. 贪心 【解题思路】 设hhh表示当前系统可以拦截的最高的高度。 贪心选择:高度小于等于hhh的导弹中高度最高的导弹。 如果当前系统无法再拦截导弹,而且存在未被拦截的导弹,那么增加一个拦截系统,将hhh设为无穷大,继续进行贪心选择。 各导弹高度构成一个数字序列,每个拦截系统拦截的导弹的高度为原序列的不升子序列。该题可以抽象为:求一个数字序列的不升子序列的最少个数。 以下讨论中使用抽象后的概念。 1. 贪心选择性质

君义NOIP的博客 7254

用易经智慧看懂人工智能:64卦中的科技密码--当古老智慧遇见未来科技

在人工智能狂飙突进的今天,我们总在追问:这些代码构建的智能究竟会带人类走向何方?或许答案早已藏在《周易》的六十四卦中——这本中华文明的“源代码”,正用一种跨越时空的语言,悄悄解释着最前沿的科技秘密。

weixin_38410320的博客 2084

【信息学奥赛一本通】1322:【例6.4】拦截导弹问题(Noip1999)(贪心)

解题思路:第一颗导弹不管怎样肯定是占用第一个系统,以后再来的第二个导弹如果小于第一个导弹的高度那么就不需要增加系统,假设大于第一颗导弹的高度,那么现在就需要增加一个导弹系统,这时再来第三颗导弹高度都小于前两个导弹系统所能拦截的最大高度,根据贪心原则,我们要比较前两个系统所能拦截的高度,选择高度较小的那个系统,这样才能做到不浪费,这时候更新前面选择的导弹系统的最小值,以此类推枚举所有导弹就可以了 下面附上ac代码 #include<bits/stdc++.h> using namespa..

_C9的博客 1833

OpenBCI脑电实验避坑指南:如何用Python准确捕捉P300信号

本文详细介绍了使用OpenBCI和Python进行P300脑电信号实验的避坑指南,包括电极贴放、信号采集、信号处理和数据分析等关键步骤。通过实战经验和代码示例,帮助研究者避开常见陷阱,提高P300信号捕捉的准确率,适用于脑机接口和神经科学研究。

weixin_30316097的博客 552

VT System故障排查指南:从License验证到硬件连接全解析

本文详细解析VT System故障排查全流程,从License验证、Real Bus模式设置到硬件连接与VT6000组网配置。针对VT7900板卡等特殊设备提供专业解决方案,并分享系统级故障的二分法排查技巧,帮助工程师快速定位和解决CANoe环境下的各类硬件识别问题。

weixin_29269441的博客 255

拦截导弹问题(贪心)

描述 某国为了防御敌国的导弹袭击,开发出一种导弹拦截系统,但是这种拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到敌国的导弹来袭,由于该系统还在试用阶段。所以一套系统有可能不能拦截所有的导弹。 输入导弹依次飞来的高度(雷达给出的高度不大于30000的正整数)。计算要拦截所有导弹最小需要配备多少套这种导弹拦截系统。 格式 输...

wodemaoheise的博客 1705

无网环境也能玩转DBeaver?手把手教你离线安装与ClickHouse连接(附实测jar包)

本文详细介绍了在无网环境下如何离线安装DBeaver并配置ClickHouse连接的完整指南。通过准备必备工具如DBeaver安装包、ClickHouse JDBC驱动及Maven本地仓库,确保在物理隔离环境中实现数据库管理。文章包含详细的安装步骤、驱动配置和性能优化建议,帮助开发者在严格网络限制下高效工作。

weixin_42635064的博客 375

信息学奥赛一本通(1322:【例6.4】拦截导弹问题(Noip1999))

1322:【例6.4】拦截导弹问题(Noip1999) 时间限制: 1000 ms 内存限制: 65536 KB 提交数: 14462 通过数: 5606 【题目描述】 某国为了防御敌国的导弹袭击,开发出一种导弹拦截系统,但是这种拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到敌国的导弹来袭,由于该系统还在试用阶段。所以一套系统有可能不能拦截所有的导弹。 输入导弹依次飞来的高度(雷达给出的高度不大于300...

1507

把 ABAP Smart Form 输出变成可直接下载的 PDF 二进制:OTF 到 XSTRING 的一条龙实践

SAP Smart Forms 生成 PDF 的实用方案:通过 OTF 格式转换实现高效输出。Smart Forms 本身不直接生成 PDF,而是输出 OTF 格式数据,需通过 CONVERT_OTF 函数转换。本文提供两种实现路径:传统的 Spool 方式和更优的直接获取 OTF 方式,后者避免了 Spool 的维护负担。核心代码演示了如何通过设置 GETOTF 参数获取 OTF 数据,并转换为 PDF 二进制流,适用于前端下载、接口传输等场景。同时介绍了 SSF_OPEN/SSF_CLOSE 方法用于批

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 676

使用微信小程序开发制作一个简单的在线问答应用

以上就是一个简单的在线问答小程序的开发过程。其中包括前端界面的布局和逻辑,后端接口的设计和实现,以及部署和测试的步骤。通过以上步骤,你可以自己尝试开发一个类似的在线问答应用。

2401_85258012的博客 798

1322:【例6.4】拦截导弹问题(Noip1999)

【题目描述】 某国为了防御敌国的导弹袭击,开发出一种导弹拦截系统,但是这种拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到敌国的导弹来袭,由于该系统还在试用阶段。所以一套系统有可能不能拦截所有的导弹。 输入导弹依次飞来的高度(雷达给出的高度不大于30000的正整数)。计算要拦截所有导弹最小需要配备多少套这种导弹拦截系统。 【输入】 n颗依次飞来的高度(1≤n≤1000)。 【输出】 要拦截所有导弹最小配备的系统数k。.

m0_61163932的博客 1134

HAL STM32+EC11编码器实现增减调节及单击、双击、长按功能

HAL STM32+EC11编码器实现增减调节及单击、双击、长按功能

perseverance51博客 4236

【信息学奥赛一本通】1322:【例6.4】拦截导弹问题(Noip1999)(C++)

【信息学奥赛一本通】1322:【例6.4】拦截导弹问题(Noip1999)(C++)

yiyayiyayousun的博客 213

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

信息学奥赛一本通:1322:【例6.4】拦截导弹问题(Noip1999)

信息学奥赛一本通:1322:【例6.4】拦截导弹问题(Noip1999)

ffsdfg的博客 823

怀旧版电脑GBC模拟器

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

【信奥赛一本通】1322:【例6.4】拦截导弹问题(Noip1999)(详细代码)

【信奥赛一本通】某国为了防御敌国的导弹袭击,开发出一种导弹拦截系统,但是这种拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到敌国的导弹来袭,由于该系统还在试用阶段。所以一套系统有可能不能拦截所有的导弹。 输入导弹依次飞来的高度(雷达给出的高度不大于30000的正整数)。计算要拦截所有导弹最小需要配备多少套这种导弹拦截系统。1.【题目描述】2.【代码】 输入导弹依次飞来的高度(雷达给出的高度不大于30000的正整数)。计算要拦截所有导弹最小需

qq_40802813的博客 605

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

1322:【例6.4】拦截导弹问题(Noip1999)——贪心

【题目描述】某国为了防御敌国的导弹袭击,开发出一种导弹拦截系统,但是这种拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到敌国的导弹来袭,由于该系统还在试用阶段。所以一套系统有可能不能拦截所有的导弹。输入导弹依次飞来的高度(雷达给出的高度不大于30000的正整数)。计算要拦截所有导弹最小需要配备多少套这种导弹拦截系统。【输入】n颗依次飞来的高度(1≤n≤1000)。【输出】要拦截所有导弹最小配备的系统数k。【输入样例】

与其邻渊羡渔,不如退而结网 733

(一本通)1322:【例6.4】拦截导弹问题(Noip1999)

i<r;i++){mi=k[i]-t;s=i;cout<<r;return 0;

Fgggjjjj的博客 412

【题解-信息学奥赛一本通】1322:【例6.4】拦截导弹问题(Noip1999)

某国为了防御敌国的导弹袭击,开发出一种导弹拦截系统,但是这种拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到敌国的导弹来袭,由于该系统还在试用阶段。从前向后处理数,如果当前的数比它前面所有的数都大,那么需要新的系统;否则,它可以放在前面任何一个系统中,但是为了系统总数最小,当前的数放在最小的大于它的数字那组,能够将高度差的浪费降到最低。输入导弹依次飞来的高度(雷达给出的高度不大于30000的正整数)。要拦截所有导弹最小配备的系统数k。

写代码的犄角旮瘩 707
上一篇: 1321:【例6.3】删数问题(Noip1994)
下一篇: 分治算法
PX-C
博客等级 码龄9年 162粉丝 405原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值