POJ 1328 - Radar Installation(贪心)

【Macbook-Latex安装部署教程】【Win-Texlive镜像下载】【简单易上手】MacTex+Vscode/Texstudio 该教程记录自己在mac()上安装部署Latex环境的经验,整个教程操作简单,配置要求少,易上手。教程分成三部分:Mactex下载与安装,Vscode插件下载与配置文件修改,Texstudio安装。 阅读详情

Radar Installation
Time Limit: 1000MS Memory Limit: 10000K
Total Submissions: 45932 Accepted: 10256

Description

Assume the coasting is an infinite straight line. Land is in one side of coasting, sea in the other. Each small island is a point locating in the sea side. And any radar installation, locating on the coasting, can only cover d distance, so an island in the sea can be covered by a radius installation, if the distance between them is at most d. 

We use Cartesian coordinate system, defining the coasting is the x-axis. The sea side is above x-axis, and the land side below. Given the position of each island in the sea, and given the distance of the coverage of the radar installation, your task is to write a program to find the minimal number of radar installations to cover all the islands. Note that the position of an island is represented by its x-y coordinates. 
 
Figure A Sample Input of Radar Installations


Input

The input consists of several test cases. The first line of each case contains two integers n (1<=n<=1000) and d, where n is the number of islands in the sea and d is the distance of coverage of the radar installation. This is followed by n lines each containing two integers representing the coordinate of the position of each island. Then a blank line follows to separate the cases. 

The input is terminated by a line containing pair of zeros 

Output

For each test case output one line consisting of the test case number followed by the minimal number of radar installations needed. "-1" installation means no solution for that case.

Sample Input

3 2
1 2
-3 1
2 1

1 2
0 2

0 0

Sample Output

Case 1: 2
Case 2: 1

====================

题意:在沿海(x轴)放置雷达,雷达侦测半径为d,求使给出的n个小岛全部被覆盖所需要的最少的雷达数量


先求出使每个小岛可侦测的区间,即以小岛为圆心半径为d的圆与x轴的交点之间的部分,就是对于该小岛来说可放置雷达的范围。若没有交点直接输出-1。

求出每个小岛的区间之后就是标准的贪心了


#include <iostream>
#include <cstdio>
#include <cmath>
#include <algorithm>

using namespace std;

struct radar
{
    double x,y;
    double l,r;
}a[1111];

bool cmp(radar a,radar b)
{
    return a.r<b.r;
}

int main()
{
    int n,d,T=1;
    while(~scanf("%d%d",&n,&d))
    {
        if(n==0&&d==0) break;
        printf("Case %d: ",T++);
        int ok=0;
        for(int i=0;i<n;i++)
            scanf("%lf%lf",&a[i].x,&a[i].y);
        for(int i=0;i<n;i++)
        {
            if(a[i].y>d)
            {
                printf("-1\n");
                ok=1;
                break;
            }
            a[i].l=a[i].x-sqrt(d*d-a[i].y*a[i].y);
            a[i].r=a[i].x+sqrt(d*d-a[i].y*a[i].y);
        }
        if(ok) continue;
        sort(a,a+n,cmp);
        double temp=a[0].r;
        int ans=1;
        for(int i=1;i<n;i++)
        {
            if(a[i].l>temp)
            {
                ans++;
                temp=a[i].r;
            }
        }
        printf("%d\n",ans);
    }
    return 0;
}


【PyTorch项目实战】图像分类与识别:手写数字识别(MNIST)、普适物体识别(CIFAR-10) 主要介绍了两个经典的实战项目:(1)基于 MNIST 数据集的手写数字识别(2)基于 CIFAR-10 数据集进行图像分类 阅读详情

相关推荐

Syzkaller实战教程2:运行环境配置+实例运行

本文详细介绍了在linux系统上搭建Syzkaller内核模糊测试环境的完整流程。 1.环境配置:通过VMware创建Ubuntu20.04虚拟机A,配置QEMU/KVM虚拟化环境,安装Go语言工具链和Syzkaller; 2.内核编译:下载Linux内核源码并配置KCOV等调试选项,编译生成带覆盖率支持的bzImage内核镜像; 3.测试环境构建:使用debootstrap创建Debian虚拟机镜像,通过QEMU启动嵌套虚拟机B; 实例测试: 4.演示两种测试场景 - 提供完整上手教程

cuguanren的博客 1377

【题解】POJ 1328 Radar Installation(贪心)

POJ 1328 Radar Installation 原题 假设滑行是一条无限长的直线。陆地在海岸的一边,大海在另一边。每个小岛都是位于海边的一个点。而任何定位在海岸上的雷达装置,只能覆盖d距离,所以海上的岛屿可以被半径装置覆盖,如果它们之间的距离最多是d。 我们使用笛卡尔坐标系,定义滑行是x轴。海面在x轴上方,陆地面在x轴下方。考虑到每个岛屿在海上的位置,以及雷达装置的覆盖距离,您的任务是编写一个程序来查找覆盖所有岛屿的雷达装置的最小数量。注意,一个岛的位置是由它的x-y坐标表示的。 图一雷达装置的样

bu_shushu的博客 1280

概率数据关联(PDA):多目标跟踪的基石算法

1. 为什么需要概率数据关联? 2. 核心思想与假设条件 3. 算法核心:概率分配与状态更新 4. 典型应用场景与优势 5. 挑战与改进方向 6. 下期预告

qq_44965657的博客 1464

【贪心】poj 1328 Radar Installation

poj 1328 Radar Installation(贪心)题意:x轴是无限长的一条海岸,x轴上方有很多小岛,需要安装雷达在海岸上,使雷达能扫到所有的小岛。给出小岛的坐标,和雷达扫描的半径,问最少需要多少雷达。题解:最优的方案把第一个点放在第一个雷达刚好能扫到的地方,就确定了放第一个雷达的最优位置,然后剩下第一个雷达没扫到的继续按这个方式找还需要的雷达的最优位置。那么我们需要把每个小岛在海岸的雷

学无纸巾 361

从零到一:手把手教你用HFSS仿真60GHz圆极化磁电偶极子天线(附参数调优心得)

本文详细介绍了在HFSS中设计60GHz圆极化磁电偶极子天线的全流程,包括仿真环境搭建、参数化建模、收敛性优化和性能验证。通过系统化的参数扫描和优化策略,显著提升了天线的轴比带宽和增益性能,为毫米波通信应用提供了高效的天线设计解决方案。

weixin_42614269的博客 311

ROCm rocr-libhsakmt分析系列1-2:多GPU跨卡VRAM访问机制分析

本文基于ROCr-Runtime的libhsakmt库源码,深入分析了多GPU系统中跨设备内存访问的实现机制。主要内容包括: 实现流程概述:通过P2P拓扑发现、统一虚拟地址空间、页表映射和硬件转发四个步骤,实现零拷贝的跨GPU内存访问。

图形/计算GPU的驱动与虚拟化技术分享园地 2507

poj 贪心相关之1328 Radar Installation

poj 贪心相关之1328 Radar Installation

ziqi9216的博客 301

YOLOv11改进 | 注意力篇 | YOLOv11引入24年最新的ELA注意力机制,并构建C2PSA_ELA

为了解决这些限制,本文介绍了一种高效的本地注意力(ELA)方法,实现了一个简单的结构,大幅度的性能改善。我们精心设计了ELA中的三个超参数,产生了四个不同的版本:ELA-T,ELAB,ELA-S和ELA-L,以满足不同视觉任务的具体要求,如图像分类,目标检测和语义分割。到此本文的正式分享内容就结束了,在这里给大家推荐我的YOLOv11改进有效涨点专栏,本专栏目前为新开的,后期我会根据各种前沿顶会进行论文复现,也会对一些老的改进机制进行补充,如果大家觉得本文帮助到你了,订阅本专栏,关注后续更多的更新~

tsg6698的博客 1285

POJ 1328 Radar Installation(贪心法之区间选点)

问题:Radar InstallationPOJ - 1328假定海岸线是无限长的直线。陆地位于海岸线的一侧,海洋位于另一侧。每个小岛是位于海洋中的一个点。对于任何一个雷达的安装 (均位于海岸线上),只能覆盖 d 距离,因此海洋中的小岛被雷达安装所覆盖的条件是两者间的距离不超过 d 。 我们使用卡笛尔坐标系,将海岸线定义为 x 轴。海洋的一侧位于 x 轴上方,陆地的一侧位于下方。给定海...

勉強しているユキさんです 324

MobileViT替换YOLOv11主干网络:轻量化新思路-(用MobileViT等轻量视觉Transformer降低计算成本)

在计算机视觉领域,目标检测一直是核心任务之一,而YOLO(You Only Look Once)系列算法因其出色的速度-精度平衡成为工业界和学术界的热门选择。随着YOLOv11的推出,模型性能达到了新的高度,但其计算复杂度和参数量也随之增加,这对资源受限的移动设备和嵌入式系统提出了挑战。与此同时,视觉Transformer(ViT)的出现为计算机视觉带来了全新范式,但其庞大的计算需求限制了在移动端的应用。MobileViT作为一种创新的轻量级视觉Transformer架构,巧妙结合了CNN的归纳偏置优势和V

本博客聚焦 YOLOv11 全流程落地,涵盖架构优化、数据集处理、训练技巧与多场景部署,兼及国产数据库、Java 开发与 AI 模型应用,内容兼顾理论与工程实践,为开发者提供系统干货,助力高效提升技术能力。 1647

Lammps实现单轴压缩-应力应变曲线以及弹性模量计算

Lammps实现单轴压缩-应力应变曲线以及弹性模量计算

Rockyoung 1万+

poj-1328 Radar Installation 贪心

题目链接poj-1328 Radar Installation题目Radar InstallationTime Limit: 1000MS Memory Limit: 10000KTotal Submissions: 97615 Accepted: 21702DescriptionAssume the coasting is an infinite straight line. Land is i...

iwts 270

Arch Linux 命令大全,值得收藏!

Arch Linux 是一款轻量级、高度可定制的 Linux 发行版,以其简洁和强大的特性深受高级用户喜爱。但对于新手来说,完全掌握 Arch Linux 的操作需要时间和实践。本文将为您详细介绍常用的 Arch Linux 命令,涵盖系统管理、文件操作、用户管理、软件安装与管理、网络配置和磁盘管理等内容,帮助您更高效地使用 Arch Linux。

网络技术联盟站 973

poj1328 Radar Installation —— 贪心

题目链接:http://poj.org/problem?id=1328 题解:区间选点类的题目,求用最少的点以使得每个范围都有点存在。以每个点为圆心,r0为半径,作圆。在x轴上的弦即为雷达可放置的范围。这个范围可用勾股定理求得。记录每个点的范围,然后排序,贪心。 (由于不熟悉qsort的用法,折腾了一个小时。后来清晰了:qsort 的cmp是通过正负判断(但结构体又不是),而...

alince20008的博客 174

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

POJ1328 Radar Installation 贪心

题目链接 http://poj.org/problem?id=1328 分析 贪心,转化为选最少的点覆盖所有区间。 将区间按右端点升序排序,依次考虑每个区间,若不能覆盖,则在区间右端点加雷达。 很容易理解,选择右端点是最优的。 AC代码 #include <cstdio> #include <cmath> #include <algorithm> using ...

Kevin的博客 180

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

POJ 1328 Radar Installation【贪心】

本题主要是查找每个岛屿能被探测到的可放雷达区间,然后使贪心算法。AC代码:   #include #include #include using namespace std; struct node { double left; double right; }a[1100]; bool cmp(node a,node b) { if(a.right != b.r

暮光乐鱼的博客 414

IDEA的使用指南

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

poj 1328 Radar Installation 【贪心】

Radar Installation Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 64022   Accepted: 14402 Description Assume the coasting is an infinite straight line. Land i

世界很大 2541

几道贪心题目 POJ1328 radar installation POJ2054 color a tree

POJ1328 radar installation 题目描述简单,阅读无障碍。用贪心求解。 贪心很容易迷惑人,一不小心就贪错了。我刚开始的想法。 1、对所有的岛,按x坐标从小到大排序 2、沿x轴从左向右开始,找到第一个还没有被覆盖的岛。以该岛为圆心、雷达覆盖范围d为半径

sj13051180的专栏 2989

poj 1328 【Radar Installation】【贪心】

poj题目链接:     http://poj.org/problem?id=1328 分析: 大致题意:将一条海岸线看成X轴,X轴上面是大海,海上有若干岛屿,给出雷达的覆盖半径和岛屿的位置,要求在海岸线上建雷达,在雷达能够覆盖全部岛屿情况下,求雷达的最少使用量。     本题一看就用贪心做,怎么贪呢?先研究一下每个岛屿,设岛屿到海岸线的垂直距离为d,雷达的覆盖半径为k,若d>k,直接输出

每个人的心中都藏着一个衰小孩儿 243

POJ 1328 Radar Installation 贪心

POJ 1328 贪心算法,以岛屿坐标为圆心,输入值为半径画圆,此圆会与 X 轴相交于 S、E 两点(岛屿 Y 坐标等于圆半径时,交一点;Y 坐标大于圆半径的情况提前排除,不参与后面的计算)。然后对由 S、E 组成的线段以 E 为判定标准排序,从左至右计算最少雷达个数。

恰同学少年 1038

POJ1328 Radar Installation (贪心)

Description Assume the coasting is an infinite straight line. Land is in one side of coasting, sea in the other. Each small island is a point locating in the sea side. And any radar installation, loca...

邵光亮的博客 786

贪心- poj1328 Radar Installation

题目: http://poj.org/problem?id=1328 题意: 给定若干点,以及半径长度d,问至少需要多少个这样的半圆才能把所有点覆盖掉 思路: 一开始的贪心策略是把点按照x坐标升序排序,每次把圆心定在尽可能右边的位置,然后一直wa >_ 这种策略会在 2 3 0 2 0 3 这种数据上被坑 同理对排序加上x相同时,y降序排序的优化后,会死在这种数据上 2 3

Keith_windniw的专栏 388

poj 1328 Radar Installation 贪心

老规矩,链接思密达http://poj.org/problem?id=1328 典型贪心 主要有三个问题 1.sort函数里加的n不能是int外的类型,完全没碰到过这么wa的 2.结构体的cmp函数,是降序 3.没考虑到一个特殊情况,就是下一个区间如果右点小于上一个的右点要更新公共右点,下面代码 #include #include #include using namespa

萌即正义的萌新教学 297

POJ 1328 Radar Installation 贪心

Radar Installation Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 46500   Accepted: 10381 Description Assume the coasting is an infinite straight line. Land

kdwycz的刷题空间 984

poj1328 Radar Installation(贪心)

POJ1328 Radar Installation(贪心)

1460

Radar Installation POJ - 1328 雷达安装 贪心

雷达安装 贪心 排序比较

shiuxin的博客 625
上一篇: POJ 2376 - Cleaning Shifts(贪心)
下一篇: POJ 3190 - Stall Reservations(贪心)
coco430
博客等级 码龄14年 9粉丝 107原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值