SP1843&UVA12103 LEONARDO - Leonardo Notebook 题解
首先是判断有无解。先疯狂寻找完所有的环,然后判断是否是偶环,最后如果都是偶环,且偶环的路径数成双成对地出现,或全是奇环,就输出 Yes
,不然就直接 pass 掉,输出 No
。
然后我们发现:这里竟然出现了置换群!!!
为什么它是置换群呢?我们从群的定义入手:
-
本题中的字母们,变着花样置换也都是字母,都属于字母集合,所以它们满足封闭性;
-
很明显,在这个群中,它的运算属于单目运算,所以和结合律没关系;
-
它的单位元为一个字符串为 A~Z;
-
逆元就是它本身。
-
其运算的先后并不影响结果,所以不用担心交换律。
于是它就有了置换群的性质。
既然是置换群就输出 Yes
,那我们就只需要看它是否满足上述几点就行了,十分简单。
代码就不贴了。