圆面覆盖问题 问题背景
在平面上有一个长为L,宽为W的长方形,左下角坐标为(0,0),右上角坐标为(L,W)。给定一些圆,第i个圆的圆心坐标为(xi,yi),半径为Ri。
你的任务是求最小的正实数k,使得把每个圆的半径变为原来的k倍后(即:第i个圆半径变为kRi,圆心位置不变),长方形将被这些圆完全覆盖。换句话说,长方形内部或边界上的任意点均至少在一个圆的内部或边界上。
输入格式
输入第一行包含三个整数n, L, W(1<=n<=50,1<=L,W<=1000),即圆的个数、长方形的长和宽。
以下n行,每行三个不超过1000的正整数xi, yi和Ri。
输出格式
仅一行,包含一个实数k,保留小数点后三位。
样例输入
1 2 2
1 1 1
样例输出
1.414
感觉这个问题还是很有挑战性的,我也不知道能不能做出来,只能说试试吧,喜欢搞算法的都来试试吧,大家看到了就顶一下吧,在有人贴出答案之前,我不想它沉了,如果有人做出来了,我想请求版主给个2分的技术分,毕竟这个题难度不小呢,做出来的请把注释写详细点,便于大家学习,呵呵……睡觉了 |