40007045Saruman's Army(C++)

40007045Saruman‘s Army
难度级别:A; 运行时间限制:1000ms; 运行空间限制:51200KB; 代码长度限制:2000000B

试题描述

直线上有N个点。点i的位置是Xi。从这N个点中选择若干个,给它们加上标记。对每一个点,其距离为R以内的区域里必须有带有标记的点(自己本身才有标记的点,可以认为与其距离为0的地方有一个带有标记的点)。在满足这个条件的情况,希望能为尽可能少的点添加标记。请问至少有多少个点被加上标记?


输入

共两行,第一行包含两个整数 N 和 R ,分别表示点的个数 N 和距离 R;第二行包含 N 个整整数,依次表示 N 个点的坐标。两数之间用一个空格分隔。

输出

一个数,表示被标记的点的个数

输入示例

6 10
1 7 15 20 30 50

输出示例

3

其他说明

限制条件:
1≤N≤1000
0≤R≤1000
0≤Xi≤1000

#include <iostream>
using namespace std;
int a[1001];
int main()
{
int n,r,i;
scanf("%d%d",&n,&r);
for(i=1;i<=n;i++) scanf("%d",&a[i]);
int ans=0;
sort(a+1,a+n+1);
for(i=2;i<=n;i++)
{
if(a[i]-a[i-1]<=r) {ans++;i++;}
else ans++;
}
printf("%d",ans);
//system("pause");
return 0;
}

40007045Saruman's Army(C++)

时间: 2024-10-11 13:10:10

40007045Saruman's Army(C++)的相关文章

POJ 3069 Saruman&#39;s Army (贪心)

题目大意:直线上有N个点,点i的位置是Xi,从这N个点中选取若干,给他们加上标记,对每一个点,其距离为R以内的区域内必须有被标记的点.求至少需要多少个点被标记. 题目思路:设最左边的点:点p的坐标为x,那么离其距离为R的点的坐标为(x+R),我们应该标记的点应为坐标最接近且小于等于(x+R)的点p,则此时[x,p+R]范围内点点均被标记.依次进行下去,直到包含所有点为止. #include<stdio.h> #include<queue> #include<iostream&

Saruman&#39;s Army(贪心)

 Saruman's Army Time Limit:1000MS     Memory Limit:65536KB     64bit IO Format:%I64d & %I64u Submit Status Practice POJ 3069 Description Saruman the White must lead his army along a straight path from Isengard to Helm's Deep. To keep track of his f

poj 3069 Saruman&#39;s Army(贪心)

 Saruman's Army Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 3446   Accepted: 1752 Description Saruman the White must lead his army along a straight path from Isengard to Helm's Deep. To keep track of his forces, Saruman distributes

POJ 3069 Saruman&#39;s Army(水题,简单的贪心)

[题意简述]:在一条直线上有N个点,每个点的位置分别是Xi,现从这N个点中选择若干个点给他们加上标记.使得,对每个点而言,在其距离为R的范围内都有带有标记的店,问   至少   要有几个被标记的点. [分析]:我们可以对这个点的序列简单的排序,按照从左到右,从小到大,然后对于最左边的这一个点,我们计算从这个点开始加上这个距离R可以到达的最远的但又小于这个距离R的点是哪一个,然后以这个点为基准,重复上述的过程,最终计算出点的个数. 详见代码: //244K 63Ms #include<iostre

POJ-3069-Saruman&#39;s Army(Java简单贪心)

Saruman's Army Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 4699   Accepted: 2430 Description Saruman the White must lead his army along a straight path from Isengard to Helm's Deep. To keep track of his forces, Saruman distributes se

40007045Saruman&#39;s Army

试题描述 直线上有N个点.点i的位置是Xi.从这N个点中选择若干个,给它们加上标记.对每一个点,其距离为R以内的区域里必须有带有标记的点(自己本身才有标记的点,可以认为与其距离为0的地方有一个带有标记的点).在满足这个条件的情况,希望能为尽可能少的点添加标记.请问至少有多少个点被加上标记? 输入 共两行,第一行包含两个整数 N 和 R ,分别表示点的个数 N 和距离 R:第二行包含 N 个整整数,依次表示 N 个点的坐标.两数之间用一个空格分隔. 输出 一个数,表示被标记的点的个数 输入示例 6

小白日记2:kali渗透测试之被动信息收集(一)

一.被动信息收集 被动信息收集指的是通过公开渠道可获得的信息,与目标系统不产生直接交互,尽量避免留下一切痕迹的信息探测.被动探测技术收集的信息可以大致分为两类, 即配置信息和状态信息. 被动探测可收集的信息 特征 被动技术 IP地址或地址段 探测是否存活 MAC地址 内部嗅探ARP,DHCP 域名信息和主机名 外部嗅探DNS,内部嗅探NetBIOS,ARP,DHCP 操作系统和版本 指纹信息 运行的应用软件   用户名和密码   设备类型(服务器.客户机) 端口和协议使用,ICMP 运行的服务

程序员必读书单(转)

作者:Lucida 微博:@peng_gong 豆瓣:@figure9 原文链接:http://lucida.me/blog/developer-reading-list/ 关于 本文把程序员所需掌握的关键知识总结为三大类19个关键概念,然后给出了掌握每个关键概念所需的入门书籍,必读书籍,以及延伸阅读.旨在成为最好最全面的程序员必读书单. 前言 Reading makes a full man; conference a ready man; and writing an exact man.

Codeforces118D Caesar&#39;s Legions(DP)

题目 Source http://codeforces.com/problemset/problem/118/D Description Gaius Julius Caesar, a famous general, loved to line up his soldiers. Overall the army had n1 footmen and n2 horsemen. Caesar thought that an arrangement is not beautiful if somewhe