洛谷P3717探测器解题报告
以样例1中的数据为例,共有5 * 5个格子。有两个探测器A和B,探测距离为1个格子。
A能探测到的点为它本身、两个绿色的点、两个黑色的点。B能探测到的点为它本身、两个绿色的点、两个紫色的点。
注意,两个黑色的点既能被A探测到,也能被B探测到,只能算一次,不要重复计算。
所以总共有8个点能被探测到:俩黑色点、俩紫色点、俩绿色点、点A、点B。
其他的点都不能被探测到,比如C点与B点的距离是2,不能被B探测到;C点与A点的距离是根号2,也不能被A探测到。
算法的思路是把所有的点都枚举一遍,点与探测器的距离可以用勾股定理算出。AC代码如下 :
#include <iostream>
using namespace std;struct detector //探测器
{int x; //行坐标int y; //列坐标
};int main()
{int n, m, r;cin >> n >> m >> r;detector det[m + 1]; for(int i = 1; i <= m; i++){cin >> det[i].x >> det[i].y;}int cnt = 0;for(int i = 1; i <= n; i++){for(int j = 1; j <= n; j++){for(int k = 1; k <= m; k++){if((i - det[k].x) * (i - det[k].x) + (j - det[k].y) * (j - det[k].y) <= r * r){cnt++;break; //只要被任意一个点探测到,就要退出循环,不退出会导致计算重复}}}}cout << cnt;return 0;
}
=======================================
了解信息学奥赛请加微信307591841或QQ群581357582
洛谷P3717探测器解题报告相关推荐
- 洛谷1042 乒乓球 解题报告
洛谷1042 乒乓球 本题地址: http://www.luogu.org/problem/show?pid=1042 题目背景 国际乒联现在主席沙拉拉自从上任以来就立志于推行一系列改革,以推动乒乓球 ...
- 洛谷 [POI2007]BIU-Offices 解题报告
[POI2007]BIU-Offices 题意 给定\(n(\le 100000)\)个点\(m(\le 2000000)\)条边的无向图\(G\),求这个图\(G\)补图的连通块个数. 一开始想了半 ...
- 洛谷 P3959 宝藏 解题报告
P3959 宝藏 题目描述 参与考古挖掘的小明得到了一份藏宝图,藏宝图上标出了 \(n\) 个深埋在地下的宝藏屋, 也给出了这 \(n\) 个宝藏屋之间可供开发的 \(m\) 条道路和它们的长度. 小 ...
- 【洛谷月赛】洛谷三月月赛题解报告
昨天就是洛谷三月月赛,小编考的并不好,才31分,隔壁大佬50分,于是小编决定改一改题,先看第一题: P5238 整数校验器 题目描述 有些时候需要解决这样一类问题:判断一个数 x 是否合法. x 合法 ...
- 地图上探测器扫描到的范围(洛谷P3717题题解,Java语言描述)
题目要求 P3717题目链接 分析 这题我做的很暴力,就直接建一个二维数组,模拟地图. 每次都直接跑一趟数组,看看探测器为圆心的圆内的点有啥,做好计数就行. 参考记忆化搜索,我们可以去防止重复计数. ...
- 洛谷P5082 成绩解题思路及题解
讨论 858 通过 3.6K 提交 题目提供者 vercont 评测方式 云端评测 标签 难度 入门难度 时空限制 1000ms / 128MB 提交 题解 提示:收藏到任务计划后,可在首页查看. 最 ...
- 【洛谷】P4147 玉蟾宫 解题报告
[洛谷]P4147 玉蟾宫 解题报告 题目背景 有一天,小猫rainbow和freda来到了湘西张家界的天门山玉蟾宫,玉蟾宫宫主蓝兔盛情地款待了它们,并赐予它们一片土地. 题目描述 这片土地被分成N* ...
- 【洛谷新手村解题报告二】C++语言,一题多解,思路和WA反思
[洛谷新手村解题报告二] 循环!循环!循环! 数组 继续上次的一!开始循环第二题 循环!循环!循环! 第二题 级数求和 [1/2] 已知:Sn= 1+1/2+1/3+-+1/n 显然对于任意一个整数 ...
- 【洛谷新手村解题报告三 字符串/递归前】C++语言,一题多解,思路和WA反思
[洛谷新手村解题报告三] 简单字符串 过程函数与递归 首先下一部分!字符串,这个前面两题新手跳过吧 简单字符串 第三题 统计单词数 [2/2] 给定一个单词,请你输出它在给定的文章中出现的次数和第一次 ...
- 洛谷【C++编程基础】递归函数初步 专题解题报告
洛谷[C++编程基础]递归函数初步 专题解题报告 T1-T89304 递归求和 题目描述 用递归的方法求1+2+3+4+-+(n-1)+n的值. 输入格式 一个整数n.(1<=n<=100 ...
最新文章
- c swap方法在哪个库里面_在编程竞赛中高效地编写C/C ++代码
- boost::iostreams模块测试定义的布尔类型特征
- Oracle分组函数
- LeetCode 2032. 至少在两个数组中出现的值(哈希/位运算)
- 解决Linux系统find: ‘/run/user/1000/gvfs’: 权限不够
- 吴恩达深度学习 —— 3.8 激活函数的导数
- Oracle中修改存储过程名语句,修改存储过程中使用的语句是,select 语句使用存储过程...
- xgboost多分类原理_XGboost原理基础之梯度提升树
- 实战tkinter图形界面开发_八款常用的 Python GUI 开发框架推荐
- ELK根据服务类型收集多个容器数据
- 分布式链路追踪(Sleuth、Zipkin)
- 浏览器的NPAPI插件技术不要学了,已经淘汰几年了
- 医学DICOM文件解析(笔记整理)
- XML-网络传输协议
- XML配置文件的读取
- 2013 NMPD展示预览,第1部分
- 专业课课本复习(数电,通原,数信,信号与系统,数据结构)
- hdu2075 A|B?(C语言)
- android之cpu使用率
- 如何创建自己的网站平台?