Genotypy są skończonymi łańcuchami genów.
Opisujemy je za pomocą słów utworzonych z wielkich liter alfabetu angielskiego A–Z.
Różne litery oznaczają różne rodzaje genów.
Gen może pączkować — zmieniając się w dwójkę nowych genów.
Tymi przemianami rządzi skończony zbiór reguł.
Każdą regułę pączkowania można zapisać w postaci trójki wielkich liter
co oznacza,
że gen
może się zmienić w dwójkę genów
.
Wielką literą
oznaczamy specjalny rodzaj genów zwanych supergenami.
Hodowla genotypu rozpoczyna się od łańcucha supergenów i polega na sterowanym pączkowaniu wybranych genów zgodnie z ustalonymi regułami.
Napisz program, który:
W pierwszym wierszu standardowego wejścia jest zapisana jedna liczba całkowita
,
.
W każdym z
kolejnych wierszy jest zapisana jedna reguła pączkowania,
w postaci słowa złożonego z trzech wielkich liter A–Z.
Dopuszczalne są reguły pączkowania, w których na drugim lub trzecim miejscu występuje supergen.
W następnym wierszu jest zapisana jedna liczba całkowita
,
.
W każdym z
kolejnych wierszy jest zapisany jeden genotyp w postaci niepustego słowa złożonego z co najwyżej
liter A–Z.
W
-tym z kolejnych
wierszy standardowego wyjścia należy zapisać:
-tego danego genotypu, albo
Dla danych wejściowych:
6 SAB SBC SAA ACA BCC CBC 3 ABBCAAABCA CCC BA
poprawną odpowiedzią jest:
3 1 NIE
Autor zadania: Przemysława Kanarek.
W razie problemów technicznych ze Szkopułem, prosimy o kontakt mailowy pod adresem szkopul@fri.edu.pl.
Jeśli chciałbyś porozmawiać o zadaniach, rozwiązaniach lub problemach technicznych, odwiedź nasze serwery na Discordzie. Są one moderowane przez społeczność, ale członkowie zespołu wsparcia również aktywnie się tam udzielają.