Witam wszystkich forumowiczów!
Mam problem z pewnym zadaniem i pomimo wszelkich prób nie jestem w stanie go rozwiązać. Prosiłbym zatem o - w miarę możliwości - łopatologiczne i dokładne przedstawienie rozwiązania tego problemu. Z góry dzięki za wszelką pomoc.
Oto zadanie :
Zadanie 69.
----------------
Wiązka zadań Geny
---------------------
Informację genetyczną (genotyp) każdego osobnika z galaktyki Madgen opisuje słowo (na-pis), w którym występują litery ze zbioru {A, B, C, D, E}. Obowiązują przy tym następujące zasady:
1. Organizmy żyjące na Madgen tworzą gatunki g1, g2, g3, …, gdzie gi to zbiór osobni-ków o długości genotypu równej i.
2. W skład genotypu mogą wchodzić geny. Pierwszy gen rozpoczyna się pierwszą wy-stępującą w genotypie sekwencją AA, a kończy się najbliższą napotkaną po niej se-kwencją BB. Każdy kolejny gen rozpoczyna się pierwszą sekwencją AA, występującą za końcem poprzedniego genu, i analogicznie kończy się najbliższą napotkaną se-kwencją BB.
3. Geny nazywamy częścią kodującą genotypu, pozostałe fragmenty tworzą część nieko-dującą.
Plik dane_gen.txt zawiera genotypy 1000 osobników z galaktyki Madgen. Każdy wiersz pliku zawiera genotyp jednego osobnika o długości nie większej niż 500 znaków.
Napisz program(-y), który poda odpowiedzi na pytania postawione w poniższych zadaniach. Odpowiedzi zapisz w pliku wyniki_gen.txt. Odpowiedź do każdego zadania rozpocznij w nowym wierszu, poprzedzając ją numerem zadania.
69.1.
-----------
Podaj liczbę wszystkich gatunków, których genotypy zapisane są w pliku dane_gen.txt. Podaj największą liczbę osobników reprezentujących ten sam gatunek.
69.2.
-----------
Występowanie w jakimkolwiek genie ciągu BCDDC oznacza mutację powodującą małą od-porność osobnika na zmęczenie. Podaj, ile osobników spośród tych, których genotypy zapisa-ne są w pliku, ma tę mutacje.
69.3.
-----------
Wyznacz i podaj największą liczbę genów występujących u jednego osobnika. Podaj też naj-większą długość genu zapisanego w całym pliku.
69.4.
-------------
Genotyp odczytywany z materiału biologicznego może być odkodowany w kierunku od strony
lewej do prawej lub odwrotnie: od strony prawej do lewej. Genotyp nazywać będziemy
odpornym, jeśli czytany od strony lewej do prawej oraz od strony prawej do lewej ma dokładnie
taką samą część kodującą. Natomiast genotyp silnie odporny to taki, który czytany od
strony lewej do prawej oraz od strony prawej do lewej daje dokładnie ten sam napis. (Inaczej
mówiąc, genotyp jest silnie odporny, gdy jest palindromem).
Wyznacz liczbę genotypów odpornych oraz liczbę genotypów silnie odpornych.