poj 3485 区间选点

题目链接:http://poj.org/problem?id=3485

题意:X轴上公路从0到L,X轴上下有一些点给出坐标代表村庄,问在公路上最少建几个出口才能使每个村庄到出口的距离不超过D。

以村庄为圆心,半径为 d 画圆,与公路相交,得到一个一个区间,这么选点呢?

按照区间右端点排序,第一个点,选择第一条线段的右端点,当前位置就在这里,已经(很)靠后了,拿这个点去查看以后的线段,看是不是符合。

 1 #include <cstdio>
 2 #include <cmath>
 3 #include <algorithm>
 4 
 5 using namespace std;
 6 
 7 const int maxn = 10005;
 8 
 9 struct Point
10 {
11     double x,y;
12 } points[maxn];
13 
14 struct Line
15 {
16     double x,y;
17 } lines[maxn];
18 
19 bool cmp(Line a,Line b)
20 {
21     return a.y < b.y;
22 }
23 
24 int main()
25 {
26     double s;
27     double d;
28     while(~scanf("%lf%lf",&s,&d))
29     {
30         int n;
31         scanf("%d",&n);
32         for(int i=0; i<n; i++)
33         {
34             scanf("%lf%lf",&points[i].x,&points[i].y);
35             lines[i].x = points[i].x - sqrt(d*d-points[i].y*points[i].y);
36             lines[i].y = points[i].x + sqrt(d*d-points[i].y*points[i].y);
37         }
38 
39         sort(lines,lines+n,cmp);
40         int ans = 1;
41         double cur = lines[0].y;
42         for(int i=1; i<n; i++)
43         {
44             if(cur>=lines[i].x&&cur<=lines[i].y)
45                 continue;
46             else
47             {
48                 cur = lines[i].y;
49                 ans++;
50             }
51         }
52 
53         printf("%d\n",ans);
54     }
55     return 0;
56 }
View Code

 

转载于:https://www.cnblogs.com/TreeDream/p/6636667.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/488758.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

data为long 怎么设置vue_vue基础之data

使用调用dataonLoad(option) {_self this;_self.$data.xxxx "te";}绑定节点元素~~~~方法methods: {tabSelect(e) {this.TabCur e.currentTarget.dataset.id;},}双向绑定原理https://www.cnblogs.com/wangjiachen666/p/9883916.html原理Vue内部通过Object.definePr…

python return函数_Python函数(一)-return返回值

定义一个函数可以在最后加上return返回值&#xff0c;方便查看函数是否运行完成和返回函数的值 # -*- coding:utf-8 -*- __author__ "MuT6 Sch01aR" def test(): print(test) def test1(): print(test1) return 8 def test2(): print("test2") return 4,t…

吉林大学计算机英语成绩,吉林大学复试出结果,初试分差84分,复试成绩却相差无几!...

原标题&#xff1a;吉林大学复试出结果&#xff0c;初试分差84分&#xff0c;复试成绩却相差无几&#xff01;2021届考研的同学有不少同学已经完成复试&#xff0c;但也有一部分同学还正在忙着准备复试科目&#xff0c;各大高校近期也纷纷发布出了2021年研究生复试的相关工作安…

势如破竹!169 篇论文带你看 BERT 在 NLP 中的 2019 年!

来源&#xff1a; AI科技评论 编译 | JocelynWang编辑 | 丛末2019 年&#xff0c;可谓是 NLP 发展历程中具有里程碑意义的一年&#xff0c;而其背后的最大功臣当属 BERT &#xff01;2018 年底才发布&#xff0c;BERT 仅用 2019 年一年的时间&#xff0c;便以「势如破竹」的姿…

ic 卡获取帐号apdu指令_非接触IC卡片APDU指令系统介绍..docx

CPU卡APDU指令介绍APDU指令格式根据7816-4规范&#xff0c;从终端发出的命令和卡片响应的信息必须遵从以下4种格式。情形1:命令 :CLAINSP1P200响应 :SW1SW2情形2&#xff1a;命令:CLAINSP1P2Le响应:Le字节的DATASW1SW2情形3&#xff1a;命令:CLAINSP1P2LcDATA响应 :SW1SW2情形4…

linux运行nodejs一般路径_NodeJS和命令行程序

奇技指南本文来自奇舞周刊公众号&#xff0c;转载请注明出处。作者&#xff1a;刘观宇&#xff0c;360 奇舞团高级前端工程师、技术经理&#xff0c;W3C CSS 工作组成员。源 起植根于Unix系统环境下的程序&#xff0c;很多都把贯彻Unix系统设计的哲学作为一种追求。Unix系统管道…

计算机怎么允许用户安装文件,如何禁止安装某个软件?电脑不允许安装软件的方法...

如何禁止安装某个软件&#xff1f;想要禁止安装软件&#xff0c;可以在组策略中直接启用软件安装规则&#xff0c;但如果只是想要禁用某个软件的安装&#xff0c;则需要用户将该软件的证书进行一个限制&#xff0c;证书不通过&#xff0c;自然无法安装&#xff0c;下面是操作步…

Docker日志收集最佳实践

传统日志处理 说到日志&#xff0c;我们以前处理日志的方式如下&#xff1a; 日志写到本机磁盘上 通常仅用于排查线上问题&#xff0c;很少用于数据分析 需要时登录到机器上&#xff0c;用grep、awk等工具分析 那么&#xff0c;这种方式有什么缺点呢&#xff1f; 第一&#x…

2020年10个诱人的技术里程碑

来源&#xff1a;IEEE电气电子工程师心理控制仿生四肢将首次亮相波士顿马拉松麻省理工学院的研究人员已经开发出一种只用思想控制仿生肢体的方法。2016年首次在人类身上试验。2020年&#xff0c;当在阿富汗失去腿的老兵Brandon Korona用他的新仿生肢参加波士顿马拉松比赛时&…

goland 方法注释_goland 设置注释模板的过程图文详解

网上找了一些办法 都没有说到关键点&#xff1a;梳理一下设置步骤如下&#xff0c;以及避免的坑。新建文件自动加注释&#xff1a;Preferences | Editor | File and Code Templates 打开go File 在右侧输入模板&#xff0c;然后点击Apply&#xff1b;对已有的方法或者文件添加注…

python爬虫源码下载 视频_Python爬虫下载视频文件部分源码

importrequestsimporttime headers{User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36} movie_url 在这里输入视频地址&#xff0c;例如&#xff1a;http://www.***********.mp4movie_name 视…

耶鲁大学计算机科学录取,耶鲁大学计算机科学研究生Offer及录取要求

对于打算去耶鲁大学读研究生的学生来讲&#xff0c;耶鲁大学研究生申请要求及耶鲁大学研究生专业介绍是学生最关心的问题。本文香港介绍耶鲁大学研究生申请要求及耶鲁大学研究生的专业介绍&#xff0c;帮助更多的学生更好的了解耶鲁大学。耶鲁大学研究生申请要求及专业介绍耶鲁…

PHP的错误处理机制

php的错误处理是比较复杂的, 本文讲解php中所有错误相关的重要知识点做一次梳理, 便于理解php的错误机制. 基础知识 在此之前, 先熟悉一下php error的基础知识 预定义常量运行时配置异常错误处理函数预定义常量 定义了所有php的错误类型常量, 每一个常量都是一个整型数值, 它的…

什么是智能仓储?一文带你彻底搞懂!

来源&#xff1a;机器人网什么是智能仓储&#xff1f;智能仓储是仓库自动化的产物。与智能家居类似&#xff0c;智能仓储可通过多种自动化和互联技术实现。这些技术协同工作以提高仓库的生产率和效率&#xff0c;最大限度地减少人工数量&#xff0c;同时减少错误。在手动仓库中…

assign深拷贝_Object.assign 深拷贝?浅拷贝?

Object.assign() 方法用于将所有可枚举属性的值从一个或多个源对象复制到目标对象。它将返回目标对象。Object.assign(target, ...sources) 【target&#xff1a;目标对象】&#xff0c;【souce&#xff1a;源对象(可多个)】1.如果目标对象中的属性具有相同的键&#xff0c;…

python交互模式运行py文件_对Python的交互模式和直接运行.py文件的区别详解

很多初学的小伙伴总是搞不清交互模式和命令行模式&#xff0c;下面一起来了解一下。 看到类似C:\>是在Windows提供的命令行模式&#xff0c;看到>>>是在Python交互式环境下。 在命令行模式下&#xff0c;可以执行python进入Python交互式环境&#xff0c;也可以执行…

HTML文件属于void值吗,使用HTML :: TreeBuilder查找html文件中的值

找到与匹配内容&#xff0c;在这种情况下&#xff0c;“磁盘空间使用情况”&#xff0c;然后找到下一个。一旦你有一个元素树&#xff1a;my $usage $t->look_down(_tag > td,sub {$_[0]->as_trimmed_text() ~ /^Disk Space Usage$/})->right()->as_trimmed_te…

SQL Server-基础-经典SQL语句

1 经典SQL语句2 基础3 1、说明&#xff1a;创建数据库4 CREATE DATABASE database-name 5 2、说明&#xff1a;删除数据库6 drop database dbname7 3、说明&#xff1a;备份sql server8 --- 创建 备份数据的 device9 USE master10 EXEC sp_addumpdevice disk, testBack, c:\mss…

什么是具身认知?反身理论?

来源&#xff1a;人机与认知实验室 具身认知&#xff08;Embodied cognition&#xff09;&#xff0c;也称“具体化”&#xff08;embodiment&#xff09;&#xff0c;是心理学中一个新兴的研究领域。具身认知理论主要指生理体验与心理状态之间有着强烈的联系。生理体验“激活”…

spring字符串判空_字符串工具类StringUtils实现字符串是否中文、字符串分割/判空/替换/查找、是否包含乱码及字符串数组合并等常规操作...

一、前言关于字符串工具类StringUtils实现字符串是否包含isChinese中文、是否包含isMessyCode乱码、常规数据类型转换、替换/删除/判空、两字符串数组mergeStringArrays合并、删除trimArrayElements字符串数组指定数组元素、字符串去重removeDuplicateStrings处理、字符串集合转…