扫描线 - UVALive - 6864 Strange Antennas
Strange Antennas
Problem's Link: http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=87213
Mean:
给你一个N*N的网格,有M个雷达,每个雷达的扫射区域是一个直角边长为P的等腰直角三角形,能够向以直角顶点为中心的四个象限扫射。
雷达之间存在信号屏蔽,只有被奇数个雷达扫射到的区域才能被信号覆盖。求被信号覆盖的区域是多少。
analyse:
因为给的都是整数点,这样就不涉及到计算几何了。
N的范围是0~3000,M的范围是1~100。
总的思路是:对N*N的网格做一维遍历(随便哪一维都行)。假设我们选取横向遍历,那么对于每一个竖列,我们对所有的雷达进行判断,判断是否经过这个数列。
如果经过,计算出在这个数列的长度,用一个数组存起来。每扫一列,对这一列的线段做一次扫描线,加到answer中,扫完即得最终答案。
Time complexity: O(N*M)
Source code:
代码1:
;
;
; ; ) ) ) ;
; ;
; )
);
)
);
);
);
);
);
;
; ))
;
}
代码2:
;
;
; );
;)
)
)
;
;;
;) ));
;
;
;
;
;
;
;) ;
}
/*
*/
扫描线 - UVALive - 6864 Strange Antennas的更多相关文章
- UVALive - 6864 Strange Antennas 扫描线
题目链接: http://acm.hust.edu.cn/vjudge/problem/87213 Strange Antennas Time Limit: 3000MS 题意 一个雷达能够辐射到的范 ...
- UVALive 3953 Strange Billboard (状态压缩+枚举)
Strange Billboard 题目链接: http://acm.hust.edu.cn/vjudge/contest/129733#problem/A Description The marke ...
- uvalive6468,51cthink1419 Strange Antennas (离散化)
题意: 在一个 n x n 的平面上,给定 m 个等腰直角三角形(各点均为整数),问该平面上被三角形覆盖奇数次的点有多少个. 思路: 由于 n 较大,不能模拟解决,故使用离散化思想. 考虑每一行有多少 ...
- Gym 101470 题解
A:Banks 代码: #include<bits/stdc++.h> using namespace std; #define Fopen freopen("_in.txt&q ...
- UVALive 4221 Walk in the Park 扫描线
Walk in the Park 题目连接: https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemi ...
- 【UVALive】3905 Meteor(扫描线)
题目 传送门:QWQ 分析 扫描线搞一搞. 按左端点排序,左端点相同时按右端点排序. 如果是左端点就$ cnt++ $,否则$ cnt-- $ 统计一下$ Max $就行了 代码 #include & ...
- UVaLive 3695 Distant Galaxy (扫描线)
题意:给平面上的 n 个点,找出一个矩形,使得边界上包含尽量多的点. 析:如果暴力那么就是枚举上下边界,左右边界,还得统计个数,时间复杂度太高,所以我们考虑用扫描线来做,枚举上下边界, 然后用其他方法 ...
- UVaLive 3695 City Game (扫描线)
题意:给定m*n的矩阵,有的是空地有的是墙,找出一个面积最大的子矩阵. 析:如果暴力,一定会超时的.我们可以使用扫描线,up[i][j] 表示从(i, j)向上可以到达的最高高度,left[i][j] ...
- UVaLive 3905 Meteor (扫描线)
题意:给定上一个矩形照相机和 n 个流星,问你照相机最多能拍到多少个流星. 析:直接看,似乎很难解决,我们换一个思路,我们认为流星的轨迹就没有用的,我们可以记录每个流星每个流星在照相机中出现的时间段, ...
随机推荐
- Maven项目结合POI导出Excl表格Demo-亲测可用
Maven项目结合POI导出Excl表格 一.POM文件添加依赖 <!-- https://mvnrepository.com/artifact/org.apache.poi/poi --> ...
- ARC下 does not support automated __weak references错误
ARC下 does not support automated __weak references错误 此错误,通常是你的ARC下不支持weak 把你项目里面,weak的地方 改为 unsafe_un ...
- git config 的全局配置
使用git的全局配置 .gitconfig 一:修改 用户下的.gitconfig 修改如图信息,添加你的信息 二: 命令添加 $ git config --global user.name ...
- HTML5 <input> required
要求在提交数据之前必须填写该字段,否则会提交不了 <form> <input type="text" id="msg" ...
- Java 并发:内置锁 Synchronized
摘要: 在多线程编程中,线程安全问题是一个最为关键的问题,其核心概念就在于正确性,即当多个线程訪问某一共享.可变数据时,始终都不会导致数据破坏以及其它不该出现的结果. 而全部的并发模式在解决问题时,採 ...
- linux内核——PAE(物理地址扩展)
引入PAE机制后,分页模式是怎样的呢? 首先,要搞明白几件事,2.6.11以上版本的linux内核中,存在4中页表(页全局目录,页上级目录,页中级目录,页表),这些页表结构是已经存在于硬盘中的,当进程 ...
- ubuntu下c语言hello world
1.首先用vi编写一个c语言程序文件,命令行输入:vi helloworld.c,建立一个名叫"helloworld.c"的文件 2.在文件中输入内容 #include <s ...
- 【转载】Redis在windows下安装过程
一.下载windows版本的Redis 去官网找了很久,发现原来在官网上可以下载的windows版本的,现在官网以及没有下载地址,只能在github上下载,官网只提供linux版本的下载 官网下载地址 ...
- 【 Linux 】单台服务器上并发TCP连接数(转)
单台服务器上并发TCP连接数 问题:一台服务器到底能够支持多少TCP并发连接呢? 1. 文件描述符限制: 对于服务器来说,每一个TCP连接都要占用一个文件描述符,一旦文件描述符使用完,新的 ...
- SeeSharpTools.JXI.DSP.Spectrum 使用
_spectrumTask.Average.Mode = SeeSharpTools.JXI.DSP.Spectrum.SpectrumAverageMode.PeakHold; // NoAvera ...