Олимпиадный тренинг

Задача . Bovine Genomics №2


У Фермера Джона есть N коров с пятнами и N коров без пятен. Как генетик, ФД уверен, что пятна на его коровах вызваны мутацией коровьего генома.
За большие деньги ФД выписал геномы своих коров. Каждый геном - это строка длины M, состоящая из четырёх символов 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 G T T G C A ... T
Корова без пятен 3:  A G T T C C A ... T
 
Посмотрев внимательно на эту таблицу он предположил, что позиции 2 и 4 могут отвечать за пятнистость. Поскольку, глядя на символы в этих позициях, ФД может предсказать, какая из его коров пятнистая, а какая - нет (например, если он видит G и С - значит, корова не пятнистая).
 
ФД предположил, что может быть объяснена множеством из трёх различных позиций. Помогите ему посчитать количество трёх различных позиций, которые могут объяснять пятнистость.
 
ФОРМАТ ВВОДА:
 
Первая строка ввода содержит NN (1≤N≤500) и MM (3≤M≤50). Каждая из следующих N строк содержит по M символов. Это описание геномов пятнистых коров. Следующие N строк описывают геномы коров без пятен.
 
ФОРМАТ ВЫВОДА:
 
Вычислите количество множеств из трёх различных позиций, которые могут объяснять пятнистость. Множество из трёх различных позиций может объяснять пятнистость, если пятнистость может быть предсказана абсолютно точно для популяции коров ФД, при анализе этих трёх позиций генома.
 
Ввод Вывод
3 8
AATCCCAT
GATTGCAA
GGTCGCAA
ACTCCCAG
ACTCGCAT
ACTTCCAT
22



time 1000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w646
Комментарий учителя