QOJ.ac

QOJ

Time Limit: 1 s Memory Limit: 2048 MB Total points: 100

#8861. Eine Lösung für die Verschmutzung

Statistics

Als Mitarbeiter von Aqueous Contaminate Management musst du die Verschmutzung überwachen, die (manchmal versehentlich, manchmal absichtlich) in Flüsse, Seen und Ozeane gelangt. Eine deiner Aufgaben ist es, die Auswirkungen der Verschmutzung auf verschiedene Ökosysteme im Wasser wie Korallenriffe, Laichgebiete und so weiter zu messen.

problem_8861_35cb540bd1e9664d37dd121e92f38cfb.png

Abbildung J.1: Darstellung der Beispieleingabe 1.

Das bei deiner Analyse verwendete Modell ist in Abbildung J.1 dargestellt. Die Küstenlinie (die waagerechte Linie in der Abbildung) liegt auf der $x$-Achse, und die Verschmutzungsquelle befindet sich im Ursprung $(0,0)$. Die Ausbreitung der Verschmutzung im Wasser wird durch den Halbkreis dargestellt; das Polygon stellt das betrachtete Ökosystem dar. Du musst die Fläche des verschmutzten Teils des Ökosystems bestimmen, die in der Abbildung dunkelblau dargestellt ist.

Eingabe

Die Eingabe besteht aus einem einzigen Testfall. Er beginnt mit einer Zeile mit zwei ganzen Zahlen $n$ und $r$, wobei $3 \le n \le 100$ die Anzahl der Eckpunkte des Polygons und $1 \le r \le 1\,000$ der Radius des Verschmutzungsgebiets ist. Es folgen $n$ Zeilen mit jeweils zwei ganzen Zahlen $x_i, y_i$, welche die Koordinaten der Eckpunkte des Polygons gegen den Uhrzeigersinn angeben, wobei $-1\,500 \le x_i \le 1\,500$ und $0 \le y_i \le 1\,500$ gilt. Das Polygon schneidet oder berührt sich nicht selbst. Kein Eckpunkt liegt auf dem Kreisrand.

Ausgabe

Gib die Fläche des Teils des Polygons aus, der innerhalb des Halbkreises mit Mittelpunkt im Ursprung und Radius $r$ liegt. Der absolute Fehler des Ergebnisses darf höchstens $10^{-3}$ betragen.

Beispiele

Eingabe 1

6 10
-8 2
8 2
8 14
0 14
0 6
-8 14

Ausgabe 1

101.576437872

Discussions

About Discussions

The discussion section is only for posting: 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.
  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.