2702 - 金融风暴

在这次金融危机爆发之前,小L就有预感。她准确地预测到了爆发地点以及扩散的形式和速度。因此,金融危机爆发时,小L的很多好友都马上来找她帮忙,希望尽可能晚的遭到金融风暴的影响。 为了简化问题,我们将地球变成二维平面(坐标值非负。最左与最右,最上与最下不可直接互达)。每个整点都为一个城市。在第0时刻只有N个金融中心爆发了金融风暴,第i个金融中心是坐标(xi,yi)。金融风暴扩散的方式是以金融中心为圆心做均匀的圆扩散。即世界上每个城市受到第i个金融风暴影响的时间为这个城市与这场风暴中心(xi,yi)的欧几里德距离。注意,地球外没有城市,金融危机也不会爆发到地球外面XD。 小L希望你写个程序来帮帮她。 现有t个好友希望小L帮忙,因为各个人所在的不同地方以及国家大小原因。你需要告诉她与第i个好友所在的(pi,qi)横纵坐标距离不超过si的所有城市(即{(a,b)|max{|a-pi|,|b-qi|}<=si})中,最晚遭受金融风暴影响的城市开始爆发金融危机的时间(为严格定义,如果需要覆盖到地球外的区域,则输出-1)。

输入

第一行两个数,地图大小w,h 第二行一个数N,金融中心坐标 接下来N行,(xi,yi) 0<=xi<=w, 0<=yi<=h 第N+3行一个数t,为询问数 接下来t行,每行三个数,(pi,qi)表示好友的坐标,si如题中描述意义。

输出

t行,每行一个数time如题中描述。(保留3位小数)

样例

输入

4 4
1
2 2
3
2 2 0
2 2 1
2 2 3

输出

0.000
1.414
-1

【数据说明】
20% 0<=w,h<=100
1<=N,t<=1000
60% 1<=t<=200000
100% 0<=w,h<=1000
1<=N,t<=1000000
时间限制 1 秒
内存限制 128 MB
讨论 统计
上一题 下一题