Missile Command
As Chief Bureaucrat at Missile Command, it has recently come to your attention that the existing performance guidelines do not sufficiently penalise frivolous use of expensive ammunition. Therefore, you must write a new battle summary analysis tool which takes into account excess ammunition consumption during battle.
A battle consists of the following elements:
Shots. A shot is a circularly explosive countermeasure. A shot has a fixed position and a duration of 2 seconds, during which its radius varies from 0 to 1 km and then back to 0 according to the formula: r = sqrt(1 – (t – 1) ^ 2).
The ground, at y = 0.
Missiles. A missile is a point particle that moves at a constant velocity. If a missile collides with a shot, it is neutralized. If a missile hits the ground before being neutralized, it is considered to have hit its target.
NOTE 1: If a missile hits a shot, the shot does not disappear - it may hit other missiles
NOTE 2: Shots of 0 radius cannot hit missiles (e.g. a missile will go through an already expired shot).
Performance is evaluated on a simple point scale. The performance criteria are as follows:
Every neutralised missile adds 1 point.
Every missile allowed to hit its target subtracts 5 points.
Every unnecessary shot subtracts 20 points. The number of unnecessary shots in a battle is the difference between the actual number of shots fired and size of the minimum subset of those shots that would have neutralised the same number of missiles.
Input
Input will be given in the following format (legend follows):
nb
nm
mx my mdx mdy mt
...
ns
sx sy st
...
...
In the following legend, indentation denotes repetition of the indented block a number of times equal to the value of the preceding input item:
nb (0 < nb) – number of battles
nm (0 ≤ nm ≤ 20) – number of missiles
mx/my (0.0 < my) – initial missile position (in km)
mdx/mdy – missile velocity (in km/s)
mt (0.0 ≤ mt) – time since battle start of the missile's entrance (in seconds)
ns (0 ≤ ns ≤ 20) – number of shots
sx/sy (1.0 ≤ sy) – shot position at time of detonation (in km)
st (0.0 ≤ st) – time since battle start of the shot's detonation (in seconds)
Output
For each battle, output a line containing the score for that battle.