QOJ.ac

QOJ

Time Limit: 3 s - 15 s Memory Limit: 1024 MB Total points: 66

#5813. Lights

Statistics

Problem

In a big, square room there are two point light sources: one is red and the other is green. There are also n circular pillars.

Light travels in straight lines and is absorbed by walls and pillars. The pillars therefore cast shadows: they do not let light through. There are places in the room where no light reaches (black), where only one of the two light sources reaches (red or green), and places where both lights reach (yellow). Compute the total area of each of the four colors in the room. Do not include the area of the pillars.

Input

  • One line containing the number of test cases, T.

Each test case contains, in order:

  • One line containing the coordinates x, y of the red light source.
  • One line containing the coordinates x, y of the green light source.
  • One line containing the number of pillars n.
  • n lines describing the pillars. Each contains 3 numbers x, y, r. The pillar is a disk with the center (x, y) and radius r.

The room is the square described by 0 ≤ x, y ≤ 100. Pillars, room walls and light sources are all disjoint, they do not overlap or touch.

Output

For each test case, output:

Case #X:
black area
red area
green area
yellow area

where X is the test case number, starting from 1, and each area is a real number.

Any answer with absolute or relative error of at most 10-5 will be accepted.

Limits

Memory limit: 1 GB. All input numbers are integers.

1 ≤ T ≤ 15

0 ≤ x, y ≤ 100

1 ≤ r ≤ 49

Small dataset (21 Points)

Time limit: 20 3 seconds.

0 ≤ n ≤ 1

Large dataset (45 Points)

Time limit: 90 15 seconds.

0 ≤ n ≤ 50

Sample

1
5 50
95 50
1
50 50 10
Case #1:
0.7656121
1437.986
1437.986
6809.104

Discussions

About Discussions

The discussion section is only for posting: Editorials, General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues. Submitting multiple issues may cause your account to be banned.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.