森林前线(Forest Frontiers)主题公园最近接受了联邦紧急事务管理局(FEMA)的检查。发现的最严重问题是公园内步道的布局。请帮助公园管理部门解决这个问题。
公园地图可以很容易地在坐标系中表示。公园内的每条步道都是一条平行于坐标轴之一的线段。任意两条步道都没有公共点,只有一个例外:线段的端点可以重合。避难点位于公园内的某个位置。保证该点要么不在任何步道上,要么与某条步道的端点重合。
在紧急情况下,警报会被拉响,游客被告知前往避难点。根据 FEMA 的规定,任何游客必须能够仅沿着步道移动到达避难点,并且有一个附加限制:在移动过程中,到避难点的距离必须单调递减。假设公园游客绝不离开步道,因此当警报触发时,每个游客可能位于任意步道的任意位置。
显然,在规划公园布局时,没有人考虑到这条愚蠢的规定。
目前,公园的地面部分已经完工,无法在地面上建造新的步道。然而,可以在地下建造一些隧道步道。在 FEMA 的规定中,地下步道与普通步道同等对待。在计算到避难点的距离时,不考虑海拔高度差。
我们可以安全地假设每条隧道由一组地下步道组成。FEMA 对隧道有额外的规定:
- 隧道不能分叉:严格只有两个入口,且两个入口之间是一条线性的路径。
- 每个隧道入口必须位于地面步道上或避难点处。
隧道可以建在不同的深度,因此它们在平面公园地图上可以相交。
建造者根据隧道在公园地图上的长度来计算隧道的建设成本。垂直分量(隧道的深度)不予考虑。请提出如何建造隧道以满足 FEMA 的要求,并使所有隧道的总长度最小。
输入格式
输入的第一行包含一个整数 $N$ — 公园内步道的数量($1 \le N \le 100\,000$)。
第二行包含两个数 $x_e$ 和 $y_e$ — 避难点的坐标。
接下来的 $N$ 行中,每行描述一条步道,包含四个数 $x_1, y_1, x_2, y_2$,其中 $x_1, y_1$ 是步道一个端点的坐标,$x_2, y_2$ 是另一个端点的坐标。保证 $x_1 = x_2$ 且 $y_1 \ne y_2$,或者 $y_1 = y_2$ 且 $x_1 \ne x_2$。
所有坐标均为整数。任何坐标的绝对值不超过 $10^8$。
输出格式
输出的第一行必须包含两个整数:$K$ — 需要建造的隧道数量,以及 $A$ — 这些隧道的总长度。
接下来的 $K$ 行中,每行必须包含一条隧道的描述。
每条隧道可以表示为一条折线,其线段平行于坐标轴。隧道的描述必须以折线的顶点数(至少为 $2$)开始,随后按顺序(从一端到另一端)给出折线顶点的 $x$ 和 $y$ 坐标。所有数字必须为整数。折线的任意两个相邻顶点必须有一个坐标相同,另一个坐标不同。
你计划建造的所有隧道中的顶点总数不能超过 $10^6$。保证存在符合输出格式限制的最优方案。如果存在多种可能的解,输出其中任意一种。如果公园本身已经符合 FEMA 的规定,不需要建造任何隧道,则输出必须包含两个数 $0$ 和 $0$(即 $K = A = 0$)。
样例
输入样例 1
12 0 0 1 3 1 5 3 1 5 1 1 3 2 3 2 3 2 2 2 2 3 2 3 1 3 2 5 1 5 3 5 3 4 3 4 3 4 4 4 4 3 4 3 4 3 5 3 5 1 5
输出样例 1
5 16 3 0 0 1 0 1 3 3 2 2 0 2 0 0 4 0 0 1 0 1 1 3 1 3 2 3 3 3 3 4 3 3 2 3 3 4 3