Problem B
DNA-koder
Källkod: dna.pas, dna.p, dna.c eller dna.cc

   Esa (fingerat namn) jobbar som DNA-forskare. Han har på egen hand uppfunnit ett eget sätt att katalogisera och systematisera olika genuppsättningar, helt skillt från de gängse metoderna. Han har uppfunnit en maskin som utför analysen av genmaterialet åt honom, men han har ett litet problem. Hans maskin producerar en massa utdata. Esa har lite svårt att sortera ut vad det är som han letar efter i det analyserade materialet, helt enkelt för den stora mängden utdata. Maskinens utdata ser ut som ett slags lång ström av bokstäver och siffror blandat huller om buller, vad Esa vill ha ut är antalet förekomster av vissa DNA-koder. Dessa koder består av alla unika permutationer av en viss kombination av bokstäver och siffror.
   Notera En sträng med flera kopior av samma tecken ger upphov till flera likadana permutationer. Esa vill att ABB och ABB skall bara skall generera en träff i strängen GABBU.
   Esa använder bara bokstäver A-Z, a-z och siffror 0-9
   Utdata från maskinen är max 255 tecken och den längsta DNA-kod som Esa söker är på 15 tecken.

Exempel1:
   Esa söker DNA-koden: AB
   Det vill säga att du skall hitta alla förekomster av AB och BA i utdata från maskinen.
   Utdata från maskinen: ABCACBABC
   Resultat: 3 (ABCACBABC)
   Observera att 'A':t i mitten ingår i två förekomster av det sökta mönstret.

Exempel2:
   Esa söker DNA-koden: ABC
   Det vill säga att du skall hitta alla förekomster av ABC, ACB, BAC, BCA, CAB och CBA i utdata från maskinen.
   Utdata från maskinen: ABCPCBAOBC
   Resultat: 2 (ABCPCBAOBC)

   INDATA: Består av heltalet n på rad 1 och därefter n bekrivningar av sökningar. Första raden av varje sökning består av DNA-koden och den andra av utdata från maskinen.
   UTDATA: Skall vara ett heltal för antalet gånger som Esas sökta DNA-kod finns i utdata från maskinen. Ett tal för var och en av de n beskrivningarna.

Exempel på indatafilen:
Filen Kommentarer
2 Antalet "deluppgifter" som finns i filen
AB Esas första sökta kombination
ABCACBABC Första utdata från maskinen
C1A Esas andra och sista sökta kombination
1ACB3FKkL3ioR98JKJKSSSD Andra och sista utdata från maskinen

Resultatet av en körning av ovanstående fil skall vara:
3
1




The translation was made by Andreas Nilsson on Mon Sep 29 15:30:00 MET DST 1997