UVA 11243 Texas Trip ------ UVALIVE 3954 Phone Cell

来源:互联网 发布:t型匹配网络 ads 编辑:程序博客网 时间:2024/06/06 18:47
题目:UVA 11243 Texas Trip 
http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=19054
(1)题意:Harry注意到门上有许多洞,他想裁一块玻璃覆盖所有的洞,而商店出售的玻璃都是呈正方形,找你帮忙找一块面积最小的玻璃。下面有T组测试数据,每一组测试数据第一行是n(表示下面有n个洞的坐标),下面n组x,y。求最大面积
(2)模型:n个点,一块正方形覆盖全部的点,求这块正方形的面积
(3)算法设计:由于每两个点可以用一个正方形包括起来,转化为n个点两两的正方形,取其边长最大即可

(4)数据结构:对于每一对点,过点做平行x轴的平行线,形成夹角x,平行线间距既是正方形边长s,找出角度x对应的最长边长。然而这并不一定是最佳的。所以我们可以三分角度,对三分的角度中,找一个边长最小的。


解题连接:http://blog.csdn.net/xf_zhen/article/details/51921003


题目:UVALIVE 3954 Phone Cell
https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=1955
(1)题意:如今时代,手机打电话,需要BTS信息收发电台发射信号,呈圆形发布。给你手机的坐标,发射范围为r,求出一台发射器覆盖手机数最多多少?
(2)模型:给平面N个 点,在平面找一个半径为R的圆,使得这个圆内包含点最多,求点的数量。每一个点分别作为极坐标原点,然后一一取其他求圆心极坐标角度范围,求出重合区间最多多少个,个数既是ans,取最大,最终结果就是max(ans+1)
(3)算法设计:根据极角确定圆心,用三角函数确定即可。这里是一个圆心的极角的区间。之后转化为一个经典的问题:给定直线上一些线段和点,求哪一个点被覆盖的次数最多,求次数?
(4)数据结构:那么如何来求区间呢?先任取一点做极点,然后分别取其余的点,用atan2(y,x)求出圆心线极角,通过半径和圆心线,确定圆心所在可能极角范围。之后进行扫描一遍即可,对N个点取过极点,重复过程,取最大值得出即可



解题连接:http://blog.csdn.net/xf_zhen/article/details/51925905



0 0
原创粉丝点击