P1610 鸿山洞的灯

第一盏和最后一盏等必须亮着,所以不找。
我们使用递推优化。其本质是关灯时把前一盏灯移到当前这一盏灯的位置上,防止下次计算时寻找前一盏灯。有类似链表删除的作用。

#include<bits/stdc++.h>
using namespace std;
int n,dist,a[100002],sum;
int main()
{cin>>n>>dist;for(int i=1; i<=n; i++)cin>>a[i];sort(a+1,a+1+n);for(int i=2; i<=n-1; i++){if(a[i+1]-a[i-1]<=dist){a[i]=a[i-1];//优化的核心部分。sum++;}}cout<<sum<<endl;return 0;
}

P1610 鸿山洞的灯(贪心算法)C++相关推荐

  1. P1610 鸿山洞的灯 - 贪心

    P1610 鸿山洞的灯 https://www.luogu.com.cn/problem/P1610 题意 有n个灯.每个灯有覆盖 dist . 即若第i-1盏与第i+1盏的距离<=dist,则 ...

  2. 洛谷 P1610 鸿山洞的灯

    P1610 鸿山洞的灯 题目描述 已知n盏灯以及每盏灯的位置p[i],p[i]均不相等,两盏相邻的灯当小于dist时,若这个安全距离里面还有灯是亮着时,就可以关掉该盏灯,(即若第i-1盏与第i+1盏的 ...

  3. Java蓝桥杯——贪心算法

    贪心算法 贪心算法:只顾眼前的苟且. 即在对问题求解时,总是做出在当前看来是最好的选择 如买苹果,专挑最大的买. 最优装载问题--加勒比海盗 货物重量:Wi={4,10,7,11,3,5,14,2} ...

  4. 贪心算法---背包问题(物品可以分割问题)

    问题背景: 有一天,阿里巴巴赶着一头毛驴上山砍柴.砍好柴准备下山时,远处突然出现一股烟尘,弥漫着直向上空飞扬,朝他这儿卷过来,而且越来越近.靠近以后,他才看清原来是一支马队,他们共有四十人,一个个年轻 ...

  5. 物联网技术部培训---贪心算法

    贪心算法 人心不足蛇吞相 贪心本质 贪心需要注意的几个问题 贪心算法需要遵循的原则 例题 最优装载问题 简单背包问题 会议安排问题 课余时间也不要忘了有各种各样的活动呀. 一道思考题 人心不足蛇吞相 ...

  6. 贪心算法-分金问题,返回分割最小代价(java)

    分金问题 分金问题 解题思路 代码演示 递归解法 贪心算法专题 分金问题 一块金条切成两半,是需要花费和长度数值一样的铜板 比如长度为20的金条,不管怎么切都要花费20个铜板,一群人想整分整块金条,怎 ...

  7. 【贪心算法】阿里巴巴与四十大盗——背包问题与0-1背包问题

    前言 关于贪心算法,我在这篇博客中已经做了简单的介绍.初识贪心算法 下面来介绍一下贪心算法中的一个经典的问题--背包问题 一.问题描述 一天,阿里巴巴赶着一头毛驴上山砍柴,无意间在远处发现了一群盗贼, ...

  8. 贪心算法--阿里巴巴与四十大盗--背包问题

    一.问题描述 有一天,阿里巴巴赶着一头毛驴上山砍柴.砍好柴准备下山时,远处突然出现一股烟尘,弥漫着直向上空非扬,朝他这儿卷过来,而且越来越近.靠近以后,他才看清原来是一支马队,他们公有四十人,一个个年 ...

  9. c语言背包问题贪心算法,C/C++语言算法篇(一):贪心算法

    贪心算法 正所谓人人都有贪心,C语言算法上的贪心可不是实际意义上的贪心,C语言结构上的贪 心可以说满足两个条件:贪心选择性质和最优子结构性质.满足这两个条件的话就可以尝试用贪心算法解决问题. 贪心选择 ...

最新文章

  1. PHP学习笔记 第八讲 Mysql.简介和创建新的数据库
  2. Leangoo 6.2.6 版发布
  3. c语言矩阵的乘积,c语言矩阵相乘
  4. python dataframe数据类型_python-Pandas DataFrame,1、2、3和NaN值的默认数据类型
  5. Matlab | Matlab中使用imaqtool工具箱获取摄像头数据及如何安装(摄像头)硬件适配器的图像采集支持包
  6. php 有子目录,php列出目录中所有子目录的实现代码
  7. JS----文档对象模型
  8. 银行卡不销卡,对持卡人有没有什么影响?
  9. 获取人脸图片和训练人脸
  10. 3D打印文件格式:STL、OBJ、AMF、3MF
  11. AutoMapper Project To OrderBy Skip Take 正确写法
  12. 1星《微信软文营销实战技巧》:标题党,作者没有实战经验
  13. selenium录屏python_Selenium实现录屏的一种方法
  14. 获取crumbIssuer
  15. 嵌入式linux开发,对pcf8563时钟操作报错:rtc-pcf8563 0-0051: low voltage detected, date/time is not reliable.
  16. ps—选择连续的多个图层、同时操作多个图层、选择所有图层与取消选择图层、锁定图层、锁定透明像素、锁定图像像素、锁定位置、锁定全部
  17. 惠普linux进入bios设置u盘启动,如何进入bios设置,手把手教你惠普如何进入bios设置u盘启动...
  18. response概述
  19. Node基础——认识Node
  20. 疫情数据分析平台(五):中国疫情地图绘制

热门文章

  1. STC89C52RC 按键控制LED
  2. AI药物设计与新药先导化合物筛选
  3. 38个PS常用工具箱快捷键,找工具不慌、不忙、不乱(纯干货)
  4. Linux嵌入式开发——shell脚本
  5. Vs2005中Wap 模拟器的使用
  6. 找出你的高价值潜在用户 - 通过归因分析实现用户画像和精准营销
  7. CISCO ASA5520 与SMTP问题
  8. 诺基亚 x302玩java_诺基亚x302刷机怎么做【图文】
  9. Flutter 自定义导航、字体大小、颜色等
  10. 前端-JS基础之常用内置对象