#P1242. Zju1015 Fishing Net弦图判定

Zju1015 Fishing Net弦图判定

题目描述

在一个高度信息化的渔村,鱼网的制作和修补都是由电脑完成。众所周知,鱼网是由网组成的(废话),网组成的东西叫网眼。如果网眼够小,就能捕到很多鱼;如果网眼太大,鱼就会全部漏走。每次捕鱼回来,鱼网都会烂得很厉害,小网眼会变成网眼,那鱼网就需要修补。他们希望有一个程序能够为他们判断鱼网是否需要修补。程序会把鱼网看作一个联通的图(不用进一步解释了吧)。他们的判断方法是:任何一个长度(组成其的边的数目)超过 33 的闭合的圈,都必须有一条交线将它分作两部分。(提示:递归下去,其实就是每个网眼都只能是三角形)如果合乎要求,程序就输出 Perfect,否则输出Imperfect.

注:这里的交线是指一个联结一封闭圈的不同结点而捕属于该圈的一条边。

输入格式

数据以一行 N,MN,M 开始,表示鱼网有 NN 个结点和M条边。(0N10000\leq N\leq 1000)以下 MM 行是M M 条边的描述。每行两个整数 AABB,表示结点A与结点B之间存在一条边。

输出格式

输出每个鱼网的测试结果,PerfectImperfect

4 4
1 2
2 3
3 4
4 1
Imperfect