问题 3852 --牛组基因学2

3852: 牛组基因学2

题目描述

      农场主John拥有n头斑点奶牛和n头无斑点奶牛。刚刚学完牛遗传学课程的他确信,奶牛的斑点是由牛基因突变引起的。
    通过大量的努力,John得到了他的牛的基因组序列。每个基因组都是一个长度为m,由4个字母组成的字符串,这四个字母为’A’、’C’、’G’、’T’。当他排开他的牛的基因组,他得到一张表,如下所示(n = 3):
位置:            1 2 3 4 5 6 7…m
斑点奶牛1:A A T C C C A…T 
斑点奶牛2:G A T T G C A…A
斑点奶牛3:G G T C G C A…A
 
普通奶牛1:A C T C C C A…G 
普通奶牛2:A C T C G C A…T 
普通奶牛3:A C T T C C A…T

    仔细地看这张表格,他推测,位置2和4是基因组中可以解释有斑点性状的位置。那就是,通过这两个位置上的字符,John可以预测他的奶牛有没有斑点(比如说,他看到"2:G ,4:C"这个组合,在斑点奶牛中出现了,但是在普通奶牛中并没有出现,那么这个 基因组就可以确定斑点性状)。

    但是John 确信:1-2个位置的基因是不够的,需要三个位置的基因才能解释斑点性状。请计算出有多少种这样的基因组(需要3个位置的基因)能解释斑点性状。

输入

输入的第一行包含n和m是正整数,1<=n<=500,3<=m<=50。
接下来的n行每行包含一个长度为m的字符串,描述的斑点奶牛基因组。
最后的n行每行包含一个长度为m的字符串,描述普通奶牛基因组。

输出

输出有多少组这样的基因组(需要3个位置的基因,来确定斑点性状)能解释斑点性状。

样例输入输出

输入#1 复制
3 8
AATCCCAT
GATTGCAA
GGTCGCAA
ACTCCCAG
ACTCGCAT
ACTTCCAT
输出#1 复制
22

提示

如何在枚举空间中跳舞

序号 标题 作者 发表时间 费用 订购数 操作