-
IT café
Új hozzászólás Aktív témák
-
#83580928
törölt tag
Srácok, segítséget szeretnék kérni, mert teljesen elakadtam. Kaptam egy ilyen feladatot, amit anno 8. osztályosoknak adtak fel és nem tudom megoldani
Szóval maga a feladat:
3. feladat: DNS (30 pont)
A DNS mesterséges előállításáért folytatott kísérletek során sikerült előállítani egy óriásmolekula-szálat. Ennek leírása legfeljebb 255 karakterből áll (C, G, A és T betű lehet benne). Ismétlődésnek nevezünk egy legalább 2 karakterből álló sorozatot, ha a DNS-leírásban legalább kétszer előfordul (egymást nem átfedően).
Írj programot (DNS.PAS, DNS.C vagy DNS.BAS), amely beolvassa a DNS-leírást, majd megadja a benne szereplő leghosszabb ismétlődő szakaszt (ha van olyan).
Ha valamelyik részfeladatra több megoldás is van, akkor az elsőt kell megadni.
Példák:
DNS: CGACCGACCGAT
Leghosszabb ismétlődő: CGAC
DNS: ACGTCG
Leghosszabb ismétlődő: CG
DNS:GSRVNKASRVKHPGQGOIOIIGUMXKABKEMOROHJHDNNAXOHYXJPDLFSYGHQPBFQLAORVCIHCUANOLVVHTIVVDBKMEPTEFQYTNTEHNGE
Leghosszabb ismétlődő:SRVEzt kellene megoldanom, de egyszerűen lövésem sincs. Annyi szakaszos feladatot csináltam már, de itt egyszerűen elakadtam. Valaki tudna segíteni, pár mondtam elmagyarázni, milyen algoritmust írjak.
Előre is köszönöm. -
#83580928
törölt tag
válasz #83580928 #12429 üzenetére
Az úgy például jó elgondolás, hogy mondjuk megnézem az első két karakterláncot (CG) és megnézem string maradék részében, hogy ismétlődik-e, ha igen akkor elmentem egy segédtömbbe. Utána megnézem az első három karaktert, megnézem hogy ismétlődik-e a maradék karakterekben, ha igen elmentem a segédtömb következő indexébe. Így tovább.Viszont ha az első két karakter nem ismétlődik, akkor tovább ugrok a következőre (GA).Ha mondjuk egy változóban mindig tárolnám a leghosszabb hosszt és ha mondjuk az elején lenne egy 4 karakternyi hosszúságú ismétlődés, akkor azután már 5 karakternyi hosszúságút keressen, mert a többi nem érdekel minket. Sokkal kevesebb találat lenne és kevesebb adat is kerülne a segédtömbbe. Ez így jó ? Meg eleve csak a string feléig kell keresnem, mert utána már nem ismétlődhet.
Példa: CGACCGACCGAT
[ Szerkesztve ]
-
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- Synology NAS
- Google Drive
- Vezeték nélküli fejhallgatók
- Okos Otthon / Smart Home
- sziku69: Fűzzük össze a szavakat :)
- Megérkezett a Razer új csúcsegere, a Viper V3 Pro
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- Garancia kérdés, fogyasztóvédelem
- AMD GPU-k jövője - amit tudni vélünk
- Luck Dragon: Asszociációs játék. :)
- További aktív témák...