Description

  萨鲁曼的大军正行进在一条笔直的道路上,由于是在夜晚行军,路上的石头严重地影响了行军速度。于是萨鲁曼决定预先在道路上安装一些路灯,以便士兵们能清楚地看到所有石头。

  萨鲁曼给出n块石头的位置Xi,现在需要在这些位置中选择若干个位置设置路灯。每盏路灯的照亮范围为R,即若你在Xi处设置了一盏路灯,则在[Xi-R,Xi+R]的范围内都会被照亮。

  现在请你计算最少设置多少盏路灯,就能把所有石头照亮。

Input

  含多组测试数据,每组数据占两行:第一行为 R 和 n ,第二行包含n个整数,表示Xi。

Output

  每组数据输出一行一个整数,表示最少的路灯数量。

代码实现如下:

#include<cstdio>
#include<iostream>
#include<algorithm>
#include<cstring>
using namespace std;
int a[1001],r,n;;
struct stone{int a,b;
}snode[10001];
bool slm(stone a,stone b){return a.a<b.a;
}
void slmddj(){sort(a+1,a+0+n+1);sort(snode+1,snode+0+n+1,slm);int i=1,j=1,cnt=0;while(i<=n&&j<=n){int l=a[j],light=0;while(i<=n&&snode[i].a<=l){if(snode[i].b>light)light=snode[i].b;i++;}while(j<=n&&light>=a[j]){j++;}cnt++;       }printf("%d\n",cnt);
}
int main(){while(scanf("%d%d",&r,&n)==2){memset(snode,0,sizeof(snode));if(r==-1&&n==-1)break;for(int i=1;i<=n;i++){scanf("%d",&a[i]);snode[i].a=a[i]-r;snode[i].b=a[i]+r;}slmddj();}return 0;
}

(感谢hbh的讲解我感动……)

CQYZ Online Judge P2995 萨鲁曼的大军(c++)相关推荐

  1. 【poj 3069】萨鲁曼的大军

    [问题描述] 萨鲁曼的大军正行进在一条笔直的道路上,由于是在夜晚行军,路上的石头严重地影响了行军速度.于是萨鲁曼决定预先在道路上安装一些路灯,以便士兵们能清楚地看到所有石头. 萨鲁曼给出n块石头的位置 ...

  2. POJ - 3069 Saruman's Army 萨鲁曼的大军 贪心 重庆一中高2018级竞赛班第三次测试 2016.7.24 Problem 2

    [问题描述] 萨鲁曼的大军正行进在一条笔直的道路上,由于是在夜晚行军,路上的石头严重地影响了行军速度.于是萨鲁曼决定预先在道路上安装一些路灯,以便士兵们能清楚地看到所有石头. 萨鲁曼给出n块石头的位置 ...

  3. POJ3069 萨鲁曼的大军(重庆一中高2018级信息学竞赛测验3) 解题报告

    [问题描述]      萨鲁曼的大军正行进在一条笔直的道路上,由于是在夜晚行军,路上的石头严重地影响了行军速度.于是萨鲁曼决定预先在道路上安装一些路灯,以便士兵们能清楚地看到所有石头. 萨鲁曼给出n块 ...

  4. Cpp环境【POJ3069】【Vijos2995】 萨鲁曼的大军 Saruman's Army

    [问题描述] 萨鲁曼的大军正行进在一条笔直的道路上,由于是在夜晚行军,路上的石头严重地影响了行军速度.于是萨鲁曼决定预先在道路上安装一些路灯,以便士兵们能清楚地看到所有石头. 萨鲁曼给出n块石头的位置 ...

  5. 【中土世界】萨鲁曼小传

    一.白袍巫师 萨鲁曼(精灵语Curunir, Saruman)是巫师(精灵语Istari, Wizard)之一.萨鲁曼又称"Man of Skill"(奇谋工匠).萨鲁曼在电影中以 ...

  6. POJ 3069 Saruman's Army(萨鲁曼军)

    POJ 3069 Saruman's Army(萨鲁曼军) Time Limit: 1000MS   Memory Limit: 65536K [Description] [题目描述] Saruman ...

  7. 萨鲁曼的军队 Saruman‘s Army(挑战程序设计竞赛)

    直线上有 NN 个点,点 ii 的位置是 x_ixi​(多个点可以在同一个位置). 可以在 NN 个点中选择某些点打上标记. 要求最终,每个点,距离其 RR 范围内必须有带有标记的点(自己本身带有标记 ...

  8. Saruman's Army (POJ3069)

    Saruman's Army 萨鲁曼的大军正行进在一条笔直的道路上,由于是在夜晚行军,路上的石头严重地影响了行军速度.于是萨鲁曼决定预先在道路上安装一些路灯,以便士兵们能清楚地看到所有石头. 萨鲁曼给 ...

  9. [2001-2003美/新等合拍经典奇幻大片][魔戒1-3][BD-RMVB][中英字幕/1280x720高清晰版]

    新西兰, 指环王, 英语, 美国, 大片 ◎译 名 魔戒首部曲:魔戒现身/指环王:护戒使者/指环王:友谊之戒 ◎片 名 The Lord Of The Rings The Fellowship Of ...

最新文章

  1. 网络请求中常见的加密机制和加密算法理解 流量加密
  2. Linux 内核存缺陷:66% 安卓设备面临受攻击风险
  3. Python按键精灵自动化_安装Python
  4. inner join 和 exists 效率_一阵骚操作,我把SQL执行效率提高了10000000倍!
  5. Windows窗口分析
  6. I had no sooner finished eating than went to toilet.
  7. Highcharts数据表示(3)
  8. 经典排序算法 - 鸡尾酒排序Cocktail sort
  9. JavaScript定义类的几种方式
  10. 焦作师范高等专科学校计算机,焦作师范高等专科学校计算机房管理规定
  11. 【读书笔记】 —— 《数学女孩》
  12. linux多线程实验实验报告,Linux多线程实验.ppt
  13. python信号处理加汉明窗_Python学习-Scipy库信号处理signal(过滤、快速傅里叶变换、信号窗函数、卷积)...
  14. 博士申请 | 皇家墨尔本理工大学鲍芝峰教授招收数据挖掘方向全奖博士生
  15. vue、四级联动(省市区街道)
  16. 特征筛选【IV和WOE】
  17. 运维工程师从月薪 5K 到 50K,中间都经历了什么?
  18. 暗态图像处理论文:A Bio-Inspired Multi-Exposure Fusion Framework for Low-light Image Enhancement
  19. c#窗体应用程序:100以内的素数,每8个数为一行
  20. 玩转直播:如何从 0 到 1 构建简单直播系统

热门文章

  1. 黑马程序员————IO流4(day21)
  2. 【STM32学习笔记】(9)——串口通讯(USART)详解
  3. 提升领导力的8点建议
  4. DOTA2无法找到有效的direct 3D
  5. rm -rf xxx遇到device or resource busy
  6. Jenkins_Docker
  7. 使用Flexible实现手淘H5页面的终端适配
  8. new URL(“www.jjj.com“)
  9. WPS Office 2019 上架微软商城,全新可定制 UI
  10. Android Hawk数据库 github开源项目,字节跳动社招面试记录