[BOJ 14106] Mnogokut
View as PDFGustav se voli zabavljati s geometrijskim problemima. Proučavao je razne geometrijske probleme na internetu i naišao na jedan koji ne zna riješiti, pa mu stoga pomognite da riješi sljedeći problem. Zadan je konveksni mnogokut i skup pravaca koji sijeku mnogokut.</p>
Za svaki od zadanih pravaca potrebno je odrediti udaljenost od mnogokuta (udaljenost pravca i najbližeg vrha mnogokuta).
Pravac siječe mnogokut ako i samo ako ima barem jednu zajedničku točku s unutrašnjosti mnogokuta. Niti jedan pravac neće biti paralelan s nekom od stranica mnogokuta.
입력 형식
U prvom retku N (1 ≤ N ≤ 100 000), broj vrhova mnogokuta.</p>
U sljedećih N redaka dva prirodna broja po apsolutnoj vrijednosti manja od 109 – koordinate vrhova konveksnog mnogokuta.
Vrhovi su dani u smjeru kazaljke na satu.
U sljedećem retku nalazi se broj M (1 ≤ M ≤ 100 000), broj pravaca.
U sljedećih M redaka tri prirodna broja A, B, C (1 ≤ A, B, C ≤ 109 ) koji predstavljaju pravac Ax + By + C = 0. Svaki od zadanih pravaca siječe mnogokut.
출력 형식
M redaka, u retku i se nalazi jedan realan broj zaokružen na 3 decimale – udaljenost mnogokuta te i-tog pravca.
예제 입력 1
4
0 2
2 0
0 -2
-2 0
1
0 4 -5
예제 출력 1
0.750
예제 입력 2
3
0 6
6 0
0 0
2
2 4 -13
0 1 -2
예제 출력 2
0.224
2.000
Comments