Tu tarea consiste en traducir secuencias de ARN a proteínas.
Las cadenas de ARN están formadas por secuencias de tres nucleótidos llamadas codones. Cada codón se traduce en un aminoácido. Al unirse, esos aminoácidos forman una proteína.
En el mundo real existen 64 codones, que a su vez se corresponden con 20 aminoácidos. Sin embargo, en este ejercicio solo usarás unos pocos de los 64 posibles. Se enumeran a continuación:
| Codón | Aminoácido |
|---|---|
| AUG | Metionina |
| UUU, UUC | Fenilalanina |
| UUA, UUG | Leucina |
| UCU, UCC, UCA, UCG | Serina |
| UAU, UAC | Tirosina |
| UGU, UGC | Cisteína |
| UGG | Triptófano |
| UAA, UAG, UGA | STOP |
Por ejemplo, la cadena de ARN «AUGUUUUCU» tiene tres codones: «AUG», «UUU» y «UCU». Estos se corresponden con metionina, fenilalanina y serina.
Como puedes ver en la tabla anterior, hay tres codones «STOP». Si te encuentras con alguno de estos codones, ignora el resto de la secuencia: la proteína está completa.
Por ejemplo, «AUGUUUUCUUAAAUG» contiene un codón STOP («UAA»). Cuando llegamos a ese punto, dejamos de procesar. Por lo tanto, solo tenemos en cuenta la parte anterior a él (es decir, «AUGUUUUCU»), y no los codones que vienen después (es decir, «AUG»).
Aprende más sobre la traducción de proteínas en Wikipedia.
Regístrate en Exercism para aprender y dominar Swift con 35 conceptos116 ejercicios y mentoría humana real, todo gratis.
Explora 11 formas distintas de resolver este ejercicio, como enfoques imperativos, ideas funcionales como la coincidencia de patrones, la recursión y las funciones de orden superior, y algo de código de bajo nivel en C++ y ensamblador.