简单的dp加贪心

news/2024/7/6 1:34:25

题目链接:传送门

这个题目让我纠结了好久,之后恍然大悟是求最长的递减序列,并加上贪心的算法,如果有大于两个的发射系统,应该判断使导弹的高度与此时个个发射系统的高度比较,选取高度差最小的去执行这次的拦截,这样才能保证发射系统的数量最小

代码:



#include<stdio.h>
#define INF 0x7ffffff
#define MAXN 10000
int dp[MAXN];//dp[i]代表第i个导弹当前拦截的高度
int main()
{
    int n,x,i,res,flag;
    int min;
    while(scanf("%d",&n)!=EOF)
    {
        res=0;
        while(n--)
        {
            scanf("%d",&x);
            flag=0;
            min=INF;
            int tempi;            
            for(i=0;i<res;i++)
            {                                //其中min>dp[i]-x的条件是选取差值较小的去打 
                if(x<=dp[i]&&min>dp[i]-x)   //寻找最长的序列,更新 
                {
                    min=dp[i]-x;
                    //dp[i]=x;
                    tempi=i;
                    flag=1;
                }    
            }
            if(flag==0)
            {
                dp[res]=x;
                res++;
            }        
            else dp[tempi]=x;
        }
        printf("%d\n",res);    
    }    
    return 0;
}   

转载于:https://www.cnblogs.com/fzuljz/p/5711131.html


http://www.niftyadmin.cn/n/1385609.html

相关文章

python文件目录下的__init__文件

一、声明包 python 中的项目结构是按照目录来组织的&#xff0c;每个python 文件就是一个模块&#xff0c;将模块整合在一起就是包&#xff0c;也就是把服务于某个功能的一系列模块放在一个目录中&#xff0c;这样如果想要使用某个包中的某个功能&#xff0c;只需要导入相应包中…

DBunit、Spring TestContext实践

1、定义接口UserDao.java package com.bao.dbunit.dao;import com.bao.dbunit.entity.User;public interface UserDao {public User getUserByNick(String nick);public void save(User user);public void update(User user);public void remove(String nick);}Pojo类&#xff…

微信公众平台开发(105) 分享到朋友圈和发送给好友

<script type"text/javascript">function onBridgeReady() {var mainTitle"华章书院",mainDesc"2014最受企业家喜爱的商业图书评选",mainURL"http://hz.huiyiw.org/hzshuyuan/home/index.php",mainImgUrl "http://hz.huiyi…

linux环境下载google云盘文件

python环境下安装gdown pip install gdownAfter that, you can download any file from Google Drive by running one of these commands: gdown https://drive.google.com/uc?id<file_id> # for files gdown <file_id> # alt…

java上转型和下转型(对象的多态性)

/*上转型和下转型&#xff08;对象的多态性&#xff09; *上转型&#xff1a;是子类对象由父类引用&#xff0c;格式&#xff1a;parent pnew son *也就是说&#xff0c;想要上转型的前提必须是有继承关系的两个类。 *在调用方法的时候&#xff0c;上转型对象只能调用父类中有的…

PCI Express(三) - A story of packets, stack and network

PCI Express(三) - A story of packets, stack and network 原文出处&#xff1a;http://www.fpga4fun.com/PCI-Express3.html Packetized transactions PCI express is a serial bus. Or is it? From the computers perspective, it is a conventional bus where read and wr…

Linux SSH 连接不上的各种联想

一、CentOS之SSH的安装与配置 SSH 为 Secure Shell 的缩写&#xff0c;由 IETF 的网络工作小组 &#xff08;Network Working Group&#xff09;所制定SSH 为建立在应用层和传输层基础上的安全协议 传统的网络服务程序&#xff0c;如FTP、POP和Telnet其本质上都是不安全的 因为…

广告平台的商业模式,行业分析

业务方向&#xff1a;网站&#xff0c;APP&#xff0c;流量 如何让公司的产品形成一个内生的循环&#xff0c;最终都是到提供信息流的服务入口&#xff0c;产生多次盈利的过程&#xff0c;都是简单的点子&#xff0c;但是都是赢在了落实上&#xff0c;互联网的用户基数太大啦。…