#P9678. 第三题
第三题
题目描述
sl 想打 dota2 了,但他现在在机房,而且 yz 就在他旁边,他自然不能玩 dota2 这种这么容易被发现(鼠标、键盘发出啪啪啪的声音,眼睛中射出诡异的光)的游戏,所以他只好打开了一个小游戏。这个小游戏是这样的:在一个平面上有 个 类点(从 编号), 个 类点(从 编号)。 类点很团结,他们想用 条边将他们连成一棵树; 类点也想用 条边连成一棵树(边不可弯曲)。但这些边都不能在非 类点出相交。如果成功连边则过关。
sl 有个不好的习惯:如果没有过关,他就会气得砸键盘。如果在平时,没有什么关系(因为 sl 不喜欢运动,只喜欢打游戏,以他的力气砸不坏键盘);然而此时 yz 在他旁边,他一砸键盘,yz 就知道他在打游戏了,一定会狠狠地 D 他一顿。凭 sl 那点可怜的智商,当然过不了关啦,所以为了拯救 sl,你只好教他玩了。
输入格式
第一行两个正整数 。含义如题所述。
接下来 行,每行两个整数,代表 类点的位置。
接下来 行,每行两个整数,代表 类点的位置。
输出格式
如果无解,输出 GG!
。
否则输出 行。
前 行,每行两个整数 ,代表在 号 类点和 号 类点间连一条边。
前 行,每行两个整数 ,代表在 号 类点和 号 类点间连一条边。
样例
3 2
1 0
0 1
2 3
0 0
1 1
1 3
2 3
1 2
另有若干组大样例位于附加文件中。
数据范围
- 对于 的数据,。
- 对于另 的数据,,存在两个相离的多边形,一个覆盖了所有 类点,另一个覆盖了所有 类点。
- 对于另 的数据,,存在两个相离的多边形,一个覆盖了所有 类点,另一个覆盖了所有 类点。
- 对于 的数据,,点的坐标在 内,没有三点共线。