Logo
(追記) (追記ここまで)

32079번 - Spaceship Exploration 스페셜 저지다국어

시간 제한메모리 제한제출정답맞힌 사람정답 비율
2 초 1024 MB69151018.519%

문제

In The ICPC Galaxy, there exists a zone filled with asteroids that is unsafe to enter. The map of the galaxy is represented in a 2D Cartesian coordinate system. The zone is in the shape of an $N$-sided convex polygon. Each corner is numbered from 1ドル$ to $N$; corner $i$ is located at $(X_i , Y_i)$. At any moment, you should not be inside this polygon; however, it is safe to touch the side of the polygon.

There are $Q$ scenarios (numbered from 1ドル$ to $Q$). In scenario $j,ドル you want to go from a starting point at $(A_j , B_j )$ to an ending point at $(C_j , D_j )$. You will be riding on a special spaceship that can only travel in a straight line. First, you set the direction of the spaceship, then the spaceship will start traveling in that direction. During the travel, you are only allowed to change direction at most once. Changing direction means you stop the spaceship, set a new direction, and then start traveling again in the new direction.

For each scenario, determine the minimum distance required to travel without being inside of the zone at any moment, or report if it is impossible to reach the ending point.

입력

The first line consists of an integer $N$ (3ドル ≤ N ≤ 100,円 000$).

Each of the next $N$ lines consists of two integers $X_i$ $Y_i$ ($-10^9 ≤ X_i , Y_i ≤ 10^9$). The points form a convex polygon in counterclockwise order. There are no three points which are collinear.

The following line consists of an integer $Q$ (1ドル ≤ Q ≤ 100,円 000$).

Each of the next $Q$ lines consists of four integers $A_j$ $B_j$ $C_j$ $D_j$ ($-10^9 ≤ A_j , B_j , C_j , D_j ≤ 10^9$). There are no starting points and ending points inside the zone. However, it is possible for the starting point and the ending point to be at the side of the zone.

All the coordinates in the input are integers.

출력

For each scenario, output the answer in a single line.

If it is possible to reach the ending point without being inside the zone at any moment, then output the minimum distance required to travel. Otherwise, output -1.

Your answer is considered correct if its absolute error or relative error does not exceed 10ドル^{-6}$. Namely, if your answer is $a$ and the jury’s answer is $b,ドル then your answer is accepted if $\frac{|a−b|}{\max(1,|b|)} ≤ 10^{-6}$.

제한

예제 입력 1

5
0 2
2 0
4 0
4 4
2 4
5
6 1 6 3
2 5 0 0
3 5 3 -1
1 4 5 4
3 4 3 0

예제 출력 1

2
5.6055512755
8.48528137422
4
-1

This sample is depicted in the following illustration.

During scenario 1ドル$ and 4ドル,ドル you can directly go to the ending point without changing the direction.

During scenario 2ドル,ドル you can go to $(0, 2),ドル then change direction to the ending point.

During scenario 3ドル,ドル you can go to $(6, 2),ドル then change direction to the ending point.

During scenario 5ドル,ドル it can be shown that it is impossible to reach the ending point.

예제 입력 2

4
-10 -9
10 -9
10 9
-10 9
2
0 10 0 -10
-10 -10 -10 -10

예제 출력 2

200.9975124224
0

예제 입력 3

8
-20 -10
10 -20
25 -15
35 -5
30 10
15 20
-25 15
-30 5
6
-15 -15 -15 20
-30 -5 30 15
25 20 -5 -20
-5 25 20 -20
-30 10 30 -10
-30 -50 50 0

예제 출력 3

59.0857761929
103.2455532034
94.7213595500
101.5640991922
164.8528137424
94.3398113206

힌트

출처

ICPC > Regionals > Asia Pacific > Indonesia > Jakarta > The 2023 ICPC Asia Jakarta Regional Contest D번

(追記) (追記ここまで)

출처

대학교 대회

  • 사업자 등록 번호: 541-88-00682
  • 대표자명: 최백준
  • 주소: 서울시 서초구 서초대로74길 29 서초파라곤 412호
  • 전화번호: 02-521-0487 (이메일로 연락 주세요)
  • 이메일: contacts@startlink.io
  • 통신판매신고번호: 제 2017-서울서초-2193 호

AltStyle によって変換されたページ (->オリジナル) /