当前位置: 首页 > news >正文

MT2084 检测敌人

思路:

1. 以装置为中心->以敌人为中心。

以敌人为中心,r为半径做圆,与x轴交于a,b点,则在[a,b]之间的装置都能覆盖此敌人。

每个敌人都有[a,b]区间,则此题转化为:有多少个装置能覆盖到这些[a,b]区间。(“覆盖”指的是装置所在的位置在[a,b]线段上)

2.使用贪心:首先将所有线段进行排序(按右端点由小到大),每次将装置放在第一个未覆盖线段的右端点上。

代码:

#include <bits/stdc++.h>
using namespace std;
const int N = 1e3 + 10;
struct enemy
{double x, y, r, l;bool v;
} e[N];
bool cmp(enemy a, enemy b)
{return a.r < b.r;
}
int main()
{int n;double r;while (cin >> n >> r && !(n == 0 && r == 0)){bool flag = false;memset(e, 0, sizeof e);for (int i = 1; i <= n; i++){cin >> e[i].x >> e[i].y;if (r * r < e[i].y * e[i].y) // 不可覆盖{flag = true;}else{ // 求在x轴上的投影e[i].l = e[i].x - sqrt(r * r - e[i].y * e[i].y);e[i].r = sqrt(r * r - e[i].y * e[i].y) + e[i].x;e[i].v = false;}}if (flag){ // 以敌人为中心,r为半径的圆与x无交点:不可覆盖cout << -1 << endl;continue;}sort(e + 1, e + 1 + n, cmp);int ans = 0;for (int i = 1; i <= n; i++){ // 从小到大检测每一条线段if (e[i].v == false){ // 此敌人还未被检测for (int j = i; j <= n; j++){if (e[j].v == false && e[j].l <= e[i].r) // 未被检测的敌人线段与当前线段有交集{e[j].v = true;}}e[i].v = true;ans++;}}cout << ans << endl;}return 0;
}

相关文章:

MT2084 检测敌人

思路&#xff1a; 1. 以装置为中心->以敌人为中心。 以敌人为中心&#xff0c;r为半径做圆&#xff0c;与x轴交于a,b点&#xff0c;则在[a,b]之间的装置都能覆盖此敌人。 每个敌人都有[a,b]区间&#xff0c;则此题转化为&#xff1a;有多少个装置能覆盖到这些[a,b]区间。…...

支持向量机、随机森林、K最近邻和逻辑回归-九五小庞

支持向量机&#xff08;Support Vector Machine, SVM&#xff09;、随机森林&#xff08;Random Forest&#xff09;、K最近邻&#xff08;K-Nearest Neighbors, KNN&#xff09;和逻辑回归&#xff08;Logistic Regression&#xff09;是机器学习和统计学习中常用的分类算法。…...

MySQL—多表查询—多表关系介绍

一、引言 提到查询&#xff0c;我们想到之前学习的单表查询&#xff08;DQL语句&#xff09;。而这一章节部分的博客我们将要去学习和了解多表查询。 对于多表查询&#xff0c;主要从以下7个方面进行学习。 &#xff08;1&#xff09;第一部分&#xff1a;介绍 1、多表关系 2、…...

Vue基础篇--table的封装

1、 在components文件夹中新建一个ITable的vue文件 <template><div class"tl-rl"><template :table"table"><el-tablev-loading"table.loading":show-summary"table.hasShowSummary":summary-method"table…...

mysql中optimizer trace的作用

大家好。对于MySQL 5.6以及之前的版本来说&#xff0c;查询优化器就像是一个黑盒子一样&#xff0c;我们只能通过EXPLAIN语句查看到最后 优化器决定使用的执行计划&#xff0c;却无法知道它为什么做这个决策。于是在MySQL5.6以及之后的版本中&#xff0c;MySQL新增了一个optimi…...

实习面试题(答案自敲)、

1、为什么要重写equals方法&#xff0c;为什么重写了equals方法后&#xff0c;就必须重写hashcode方法&#xff0c;为什么要有hashcode方法&#xff0c;你能介绍一下hashcode方法吗&#xff1f; equals方法默认是比较内存地址&#xff1b;为了实现内容比较&#xff0c;我们需要…...

二叉树讲解

目录 前言 二叉树的遍历 层序遍历 队列的代码 queuepush和queuepushbujia的区别 判断二叉树是否是完全二叉树 前序 中序 后序 功能展示 创建二叉树 初始化 销毁 简易功能介绍 二叉树节点个数 二叉树叶子节点个数 二叉树第k层节点个数 二叉树查找值为x的节点 判…...

Unity DOTS技术(五)Archetype,Chunk,NativeArray

文章目录 一.Chunk和Archetype什么是Chunk?什么是ArchType 二.Archetype创建1.创建实体2.创建并添加组件3.批量创建 三.多线程数组NativeArray 本次介绍的内容如下: 一.Chunk和Archetype 什么是Chunk? Chunk是一个空间,ECS系统会将相同类型的实体放在Chunk中.当一个Chunk…...

算法学习笔记(7.1)-贪心算法(分数背包问题)

##问题描述 给定 &#x1d45b; 个物品&#xff0c;第 &#x1d456; 个物品的重量为 &#x1d464;&#x1d454;&#x1d461;[&#x1d456;−1]、价值为 &#x1d463;&#x1d44e;&#x1d459;[&#x1d456;−1] &#xff0c;和一个容量为 &#x1d450;&#x1d44e;&…...

气膜建筑的施工对周边环境影响大吗?—轻空间

随着城市化进程的加快&#xff0c;建筑行业的快速发展也带来了环境问题。噪音、灰尘和建筑废料等对周边居民生活和生态环境造成了不小的影响。因此&#xff0c;选择一种环保高效的施工方式变得尤为重要。气膜建筑作为一种新兴的建筑形式&#xff0c;其施工过程对周边环境的影响…...

【计算机网络】对应用层HTTP协议的重点知识的总结

˃͈꒵˂͈꒱ write in front ꒰˃͈꒵˂͈꒱ ʕ̯•͡˔•̯᷅ʔ大家好&#xff0c;我是xiaoxie.希望你看完之后,有不足之处请多多谅解&#xff0c;让我们一起共同进步૮₍❀ᴗ͈ . ᴗ͈ აxiaoxieʕ̯•͡˔•̯᷅ʔ—CSDN博客 本文由xiaoxieʕ̯•͡˔•̯᷅ʔ 原创 CSDN 如…...

30分钟快速入门TCPDump

TCPDump是一款功能强大的网络分析工具&#xff0c;它可以帮助网络管理员捕获并分析流经网络接口的数据包。由于其在命令行环境中的高效性与灵活性&#xff0c;TCPDump成为了网络诊断与安全分析中不可或缺的工具。本文将详细介绍TCPDump的基本用法&#xff0c;并提供一些高级技巧…...

Python | 刷题日记

1.海伦公式求三角形的面积 area根号下&#xff08;p(p-a)(p-b&#xff09;(p-c)) p是周长的一半 2.随机生成一个整数 import random xrandom.randint(0,9)#随机生成0到9之间的一个数 yeval(input("please input:")) if xy:print("bingo") elif x<y:pri…...

“JS逆向 | Python爬虫 | 动态cookie如何破~”

案例目标 目标网址:aHR0cHMlM0EvL21hdGNoLnl1YW5yZW54dWUuY29tL21hdGNoLzI= 本题目标:提取全部 5 页发布日热度的值,计算所有值的加和,并提交答案 常规 JavaScript 逆向思路 JavaScript 逆向工程通常分为以下三步: 寻找入口:逆向工程的核心在于找出加密参数的生成方式。…...

十.数据链路层——MAC/ARP

IP和数据链路层之间的关系 引言 在IP一节中&#xff0c;我们说IP层路由(数据转发)的过程&#xff0c;就像我们跳一跳游戏一样&#xff0c;从一个节点&#xff0c;转发到另一个节点 它提供了一种将数据从A主机跨网络发到B主机的能力 什么叫做跨网络&#xff1f;&#xff1f;&a…...

Linux主机安全可视化运维(免费方案)

本文介绍如何使用免费的主机安全软件,在自有机房或企业网络实现对Linux系统进行可视化“主机安全”管理。 一、适用对象 本文适用于个人或企业内的Linux服务器运维场景,实现免费、高效、可视化的主机安全管理。提前发现主机存在的安全风险,全方位实时监控主机运行时入侵事…...

Vite + Vue 3 前端项目实战

一、项目创建 npm install -g create-vite #安装 Vite 项目的脚手架工具 # 或者使用yarn yarn global add create-vite#创建vite项目 create-vite my-vite-project二、常用Vue项目依赖安装 npm install unplugin-auto-import unplugin-vue-components[1] 安装按需自动导入组…...

python-字符替换

[题目描述] 给出一个字符串 s 和 q 次操作&#xff0c;每次操作将 s 中的某一个字符a全部替换成字符b&#xff0c;输出 q 次操作后的字符串输入 输入共 q2 行 第一行一个字符串 s 第二行一个正整数 q&#xff0c;表示操作次数 之后 q 行每行“a b”表示把 s 中所有的a替换成b输…...

团队项目开发使用git工作流(IDEA)【精细】

目录 开发项目总体使用git流程 图解流程 1.创建项目仓库[组长完成] 2. 创建项目&#xff0c;并进行绑定远程仓库【组长完成】 3.将项目与远程仓库&#xff08;gitee&#xff09;进行绑定 3.1 创建本地的git仓库 3.2 将项目添加到缓存区 3.3 将项目提交到本地仓库&#…...

爬虫案例实战

文章目录 一、窗口切换实战二、京东数据抓取 一、窗口切换实战 案例实战&#xff1a;使用selenium实现打开百度和腾讯两个窗口并切换 知识点&#xff1a;用到selenium中execute_script()执行js代码及switch_to.window()方法 全部代码如下&#xff1a; import time import war…...

电商客服+导购智能体的设计与开发

这个代码的核心功能是&#xff1a;基于输入词的长度动态选择反义词示例&#xff0c;并调用大模型生成反义词&#xff0c;体现了 “动态少样本提示&#xff08;Dynamic Few-Shot Prompting&#xff09;” 与 “上下文长度感知的示例选择” 的能力。 from langchain.prompts impo…...

阿里通义Z-Image-Turbo WebUI镜像部署:科哥二次开发版详细使用教程

阿里通义Z-Image-Turbo WebUI镜像部署&#xff1a;科哥二次开发版详细使用教程 1. 镜像概述与核心优势 阿里通义Z-Image-Turbo WebUI是由开发者"科哥"基于阿里通义实验室原版模型二次开发的图像生成工具。这个镜像封装了完整的WebUI界面&#xff0c;让用户无需复杂…...

AXOrderBook:解密A股订单簿重建与FPGA硬件加速的深度技术方案

AXOrderBook&#xff1a;解密A股订单簿重建与FPGA硬件加速的深度技术方案 【免费下载链接】AXOrderBook A股订单簿工具&#xff0c;使用逐笔行情进行订单簿重建、千档快照发布、各档委托队列展示等&#xff0c;包括python模型和FPGA HLS实现。 项目地址: https://gitcode.com…...

如何快速突破iOS限制:终极降级完全手册

如何快速突破iOS限制&#xff1a;终极降级完全手册 【免费下载链接】downr1n downgrade tethered checkm8 idevices ios 14, 15. 项目地址: https://gitcode.com/gh_mirrors/do/downr1n 你是否曾想过让旧款iPhone重获新生&#xff1f;是否对苹果系统的版本限制感到困扰&…...

Windows右键菜单终极管理指南:用ContextMenuManager轻松掌控右键菜单

Windows右键菜单终极管理指南&#xff1a;用ContextMenuManager轻松掌控右键菜单 【免费下载链接】ContextMenuManager &#x1f5b1;️ 纯粹的Windows右键菜单管理程序 项目地址: https://gitcode.com/gh_mirrors/co/ContextMenuManager 还在为杂乱的Windows右键菜单烦…...

Omni-Vision Sanctuary 模拟电路设计可视化:与 Multisim 仿真结果结合生成原理图效果图

Omni-Vision Sanctuary 模拟电路设计可视化&#xff1a;与 Multisim 仿真结果结合生成原理图效果图 1. 电子工程师的文档痛点 在电子设计领域&#xff0c;工程师们经常面临一个共同的烦恼&#xff1a;花大量时间完成的电路仿真和分析&#xff0c;最终呈现给团队或客户的文档却…...

Chrome密码一键提取:3分钟找回所有浏览器保存的密码

Chrome密码一键提取&#xff1a;3分钟找回所有浏览器保存的密码 【免费下载链接】chromepass Get all passwords stored by Chrome on WINDOWS. 项目地址: https://gitcode.com/gh_mirrors/chr/chromepass 你是否曾经因为忘记某个重要网站的登录密码而感到焦虑&#xff…...

从噪音到宁静:5种高级风扇控制策略深度解析

从噪音到宁静&#xff1a;5种高级风扇控制策略深度解析 【免费下载链接】FanControl.Releases This is the release repository for Fan Control, a highly customizable fan controlling software for Windows. 项目地址: https://gitcode.com/GitHub_Trending/fa/FanContro…...

OLAP] DuckDB : 开源免费的、面向嵌入式场景、列式存储的分析型数据库

0 序 DuckDB 是近期非常火的一款 AP 数据库&#xff0c;其独特的定位很有趣。甚至有数据库产品考虑将其纳入进来&#xff0c;作为分析能力的扩展。 考虑到项目中一个数据处理场景&#xff0c;就此调研一二。 DuckDB 的爆火&#xff0c;也给所有盲目追逐“大数据”的技术人敲响…...

OWL ADVENTURE惊艳案例:风格迁移与艺术画作生成

OWL ADVENTURE惊艳案例&#xff1a;风格迁移与艺术画作生成 每次看到那些世界名画&#xff0c;你是不是也想过&#xff0c;要是能把自己的照片也变成那样该多好&#xff1f;以前这得靠专业画师花上好几天&#xff0c;现在&#xff0c;有了OWL ADVENTURE这样的AI模型&#xff0…...