#P2864. 战火星空

战火星空

题目描述

APIO回来之后,XX便迷上了“战火星空”这个游戏。

原版战火星空中,有一架小飞机和一个Boss,玩家控制小飞机来对Boss进行射击。然而,这种“一对一”的游戏已经让XX乏味,于是XX基于原版战火星空,将其加强创造了一款新版战火星空。

新版战火星空中,有NBossM架小飞机。在游戏过程中,Boss的位置不会改变,而小飞机在从(Sx, Sy)(Ex, Ey)的线段以速度V匀速飞行,并在到达终点后从地图上消失;小飞机的子弹具有R的射程,在任意时刻,小飞机可以向在射程内的Boss射击;而为了使实力更加均衡,游戏还规定在任意时刻,每个Boss只能被一架小飞机作为目标射击;每架小飞机也有一个能量值E的限制,若某时刻小飞机向KBoss射击,则每秒需要消耗K个单位的能量,所有能量消耗完之后小飞机不再能够进行射击。

在游戏开始前,XX知道了所有Boss的位置,以及每架小飞机的飞行路线以及各项属性,他想知道所有Boss被攻击的总时间最大是多少,你能帮助他吗?

输入格式

第一行包含两个整数NM,分别表示Boss和小飞机的个数。

接下来N行,每行一个正整数点坐标(x, y),表示Boss所在的位置。

接下来M行,每行七个正整数:Sx, Sy, Ex, Ey, V, R, E,表示每架小飞机的运动路线、速度、射程以及能量值。

输出格式

输出一个实数,表示所有Boss被攻击的最大总时间,保留6位小数。

样例1:  1 1  2 2  1 1 5 3 2 1 2    样例2:  2 4  12 10  7 5  10 10 12 10 1 1 3  6 1 8 10 1 2 3  3 6 8 2 5 3 1  42 42 42 42 6 6 6
样例1:  0.894427    样例2:  4.983771

数据范围与约定



对于30%的数据,保证每个Boss在任意时刻只在最多一架小飞机的射程范围内。对于100%的数据,1≤N,M≤20,输入的所有数均为正整数,且不超过1000。