求教一个python接龙的编程

各位大虾,小弟学python不久,最近程序中遇到一个类似接龙的问题,特请教。
有这样1~n个集合,每个集合对应a,b,c三个字母,我程序中会遍历每两个集合两两配对,
即任意从一个集合中取一个字母与另一个集合中所取字母组成配对,如从4中取字母a与从2中取字母c,组成4a_2c的配对
在遍历所有组合后,我程序会筛查出一些满足前面条件的配对集合,举例如下
我的程序中筛查到的组合对文件 如:4a_3a  4a_3b 4a_3c 4a_2b 4a_2c 4b_3a 4b_3c 4c_2c 4c_1c
3a_2a 3b_2c 3b_1c 3c_1a
2a_1a 2a_1c 2b_1c 2c_1c
然后进行接龙,即4a_3a 与 3a_2a接龙组合成4a_3a_2a (前后相同就可组合,这里是3a相同)因此上面4集合与3集合的组合
有三个,即4a_3a_2a与4a_3b_2c与4b_3a_2a(算满足条件一),接着这三个中又通过条件二筛选(即接龙中的每个交叉匹配
都必须在上面的组合对文件中)如第一个4a_2a组合在4集合中就没有,而4a_2c有,所以最后只保留4a_3b_2c,接下来依此两
条件进行接龙,最后得到4a_3b_2c_1c组合,组合中每个集合间的组合都在上面组合对文件中(这里是4a_2c,4a_1c,3b_1c都有)。因为n数值为整数即可,整个想通过程序对得到的组合对文件进行满足上面两条件的接龙组合,特向各位编程高手请教,万分感激!!!!!