模拟做比赛,这道题是一道求混合图欧拉路的题目
构图就是以26个字母为节点,接着比如一个单词,那么他的首字母和尾字母且标记为0时,相当于一条单向边
如果标记为1,相当于一条无向边,接着构图就和求欧拉回路一样了
注意这是以26个字母为节点
如果出入度只差为奇数的点的个数不是0或者2的话,就不存在欧拉路径了,否则存在
如果存在奇数点个数为2的,那么当我们给出入度只差除以2的时候,只要队入度大于0的奇数点个数的那个点-1,再除以2,另外那个负点+1,除以2,再与超级源汇点连,就可以得到欧拉路径
就不说这上面这些了,主要是我终于知道为什么JOJ拿到题目没过了
求欧拉路还要判联通,我以为扫一遍,判是否满流即可,其实不是这样的,还需要判联通。。
判完后就没有问题了
具体代码就不贴了,就是混合图求欧拉路的代码