CF598F Cut Length

题目描述

给定 $n$ 个点的简单多边形,再给出 $m$ 条直线。对于每条直线,求直线与多边形的公共部分的长度。 多边形的边界被视作属于多边形。

输入格式

第一行包含整数 $n$ 和 $m$ ( $3 \le n \le 1000,1 \le m \le 100$ )。接下来的 $n$ 行包含多边形顶点的坐标(顺时针或逆时针方向)。 以下 $m$ 行,每一行都包含一条直线上两个不同点的坐标。 所有输入的坐标都是实数,小数点后最多两位数。它们的绝对值不超过 $10^5$ 。

输出格式

输出 $m$ 行,每行表示一次询问的答案。答案被视为正确当且仅当绝对误差或者相对误差小于 $10^{-6}$。