평면 위에 단순 다각형(볼록하지 않을 수도 있다) 하나와 직선 하나가 주어진다. 이 직선을 따라 다각형을 자르면 여러 개의 작은 다각형으로 나뉠 수 있다. 자른 길이, 즉 직선과 다각형의 교집합을 이루는 선분들의 전체 길이를 구하여라.
입력은 여러 개의 테스트 케이스로 이루어진다. 각 테스트 케이스의 첫 줄에는 두 음이 아닌 정수 $n$과 $m$이 주어지며 ($3 \le n \le 1000$), 각각 다각형의 꼭짓점 개수와 고려할 절단 직선의 개수를 뜻한다. 이어지는 $n$개의 줄에는 각 꼭짓점의 $x$, $y$ 좌표가 시계 방향 또는 반시계 방향 순서로 주어진다. 그다음 $m$개의 줄에는 각각 네 개의 수 $x_1\ y_1\ x_2\ y_2$가 주어지며, 이는 절단 직선을 정의하는 서로 다른 두 점의 좌표이다. 다각형의 어떤 꼭짓점이 절단 직선으로부터 10e-8보다 가까이 있으면, 그 꼭짓점은 직선 위에 있는 것으로 간주한다. 입력은 $n$과 $m$이 모두 $0$인 줄로 끝나며, 이 줄은 처리하지 않는다.
각 절단 직선에 대해, 직선과 다각형의 교집합을 이루는 선분들의 전체 길이를 소수점 아래 정확히 셋째 자리까지 반올림하여 한 줄에 하나씩 출력한다. 다각형의 둘레(경계)는 다각형에 포함되는 것으로 본다.
다각형의 둘레가 다각형에 포함되므로, 절단 직선과 완전히 겹치는 변은 그 변의 길이만큼 교집합에 더해진다. 반면 직선이 다각형과 단 하나의 꼭짓점에서만 만나는 경우, 그 교집합의 길이는 $0$이다.