Codi genètic P36671


Statement
 

pdf   zip

thehtml

Feu un programa que converteixi cadenes d’ARN missatger (seqüències derivades de l’ADN) a proteïnes utilitzant el codi genètic.

El codi genètic és un conjunt de regles que tradueix les seqüències d’ARN missatger a proteïnes. Una seqüencia d’ARN missatger és una seqüència de bases. Hi ha quatre bases possibles: A, C, G i U. Les bases dels gens s’agrupen de tres en tres formant codons. A cada codó li correspon un amino àcid. Una proteïna és una seqüència d’amino àcids.

La figura següent mostra el codi genètic. Es pot veure, per exemple, que al codó GGA li correspon la glicina i que al codó AUC li correspon la isoleucina. Hi ha també tres codons especials, marcats amb el símbol d’Stop, que no codifiquen cap amino àcid, sinó que marquen el final de la codificació. Un cop es troba un codó d’Stop, el gen queda acabat (no s’ha de tornar a buscar un AUG després). A més, les proteïnes només comencen a sintetitzar-se a partir de la primera aparició del codó AUG. Així, un gen imaginari GCCAAUGACUAAGGCCUAAAGA donaria lloc a la proteïna ThrLysAla.

Entrada

L’entrada és gen extret del GeneBank, un banc genòmic lliurament consultable a Internet. Aquest gen consta d’una breu descripció acabada en ‘:’ seguida de la seqüència de bases de l’ARN missatger corresponent a aquest gen. El gen està ben format, és a dir, sempre apareix un codó AUG abans d’un codó Stop.

Sortida

La sortida ha de ser la proteïna sintetitzada per aquest gen segons les regles anteriors del codi genètic. Cal escriure la seqüència utilitzant els noms de tres lletres estàndards per a cada aminino àcid. A cada línia cal escriure 26 amino àcids, excepte la darrera, que en pot contenir menys.

Observació

El segon exemple és un retall artificial del genoma del virus de l’hepatitis C. Els jocs de proves privats contenen el genoma complet (10 kilobases).

Public test cases
  • Input

    Petita prova:
    GCCAAUGACUAAGGCCUAAAGA
    

    Output

    ThrLysAla
    
  • Input

    Hepatitis C virus, partial genome:
    UUGUGGUACUGCCUGAUAGGGUGCUUGCGAGUGCCCCGGGAGGUCUCGUAGACCGUGCACCAUGAGCACG
    AAUCCUAAACCUCAAAGAAAAACCAAACGUAACACCAACCGUCGCCCACAGGACGUCAAGUUCCCGGGUG
    GCGGUCAGAUCGUUGGUGGAGUUUACUUGUUGCCGCGCAGGGGCCCUAGAUUGGGUGUGCGCGCGACGAG
    GAAGACUUCCGAGCGGUCGCAACCUCGAGGUAGACGUCAGCCUAUCCCCAAGGCACGUCGGCCCGAGGGC
    AGGACCUGGGCUCAGCCCGGGUACCCUUGGCCCCUCUAUGGCAAUGAGGGUUGCGGGUGGGCGGGAUGGC
    UCCUGUCUCCCCGUGGCUCUCGGCCUAGCUGGGGCCCCACAGACCCCCGGCGUAGGUCGCGCAAUUUGGG
    UAAGGUCAUCGAUACCCUUACGUGCGGCUUCGCCGACCUCAUGGGGUACAUACCGCUCGUCGGCGCCCCU
    CUUGGAGGCGCUGCCAGGGCCCUGGCGCAUGGCGUCCGGGUUCUGGAAGACGGCGUGAACUAUGCAACAG
    GGAACCUUCCUGGUUGCUCUUUCUCUAUCUUCCUUCUGGCCCUGCUCUCUUGCCUGACUGUGCCCGCUUC
    AGCGUUGGUGGUAGCUCAGCUGCUCCGGAUCCCACAAGCCAUCAUGGACAUGAUCGCUGGUGCUCACUGG
    GGAGUCCUGGCGGGCAUAGCGUAUUUCUCCAUGGUGGGGAACUGGGCGAAGGUCCUGGUAGUGCUGCUGC
    UAUUUGCCGGCGUCGACGCGGAAACCCACGUCACCGGGGGAAGUGCCGGCCGCACCACGGCUGGGCUUGU
    UGGUCUCCUUACACCAGGCGCCAAGCAGAACAUCCAACUGAUCAACACCAACGGCAGUUGGCACAUCAAU
    AGCACGGCCUUGAACUGCAAUGAAAGCCUUAACACCGGCUGGUUAGCAGGGCUCUUCUAUCAGCACAAAU
    UCAACUCUUCAGGCUGUCCUGAGAGGUUGGCCAGCUGCCGACGCCUUACCGAUUUUGCCCAGGGCUGGGG
    UCCUAUCAGUUAUGCCAACGGAAGCGGCCUCGACGAACGCCCCUACUGCUGGCACUAACCUCCAAGACCU
    

    Output

    SerThrAsnProLysProGlnArgLysThrLysArgAsnThrAsnArgArgProGlnAspValLysPheProGlyGly
    GlyGlnIleValGlyGlyValTyrLeuLeuProArgArgGlyProArgLeuGlyValArgAlaThrArgLysThrSer
    GluArgSerGlnProArgGlyArgArgGlnProIleProLysAlaArgArgProGluGlyArgThrTrpAlaGlnPro
    GlyTyrProTrpProLeuTyrGlyAsnGluGlyCysGlyTrpAlaGlyTrpLeuLeuSerProArgGlySerArgPro
    SerTrpGlyProThrAspProArgArgArgSerArgAsnLeuGlyLysValIleAspThrLeuThrCysGlyPheAla
    AspLeuMetGlyTyrIleProLeuValGlyAlaProLeuGlyGlyAlaAlaArgAlaLeuAlaHisGlyValArgVal
    LeuGluAspGlyValAsnTyrAlaThrGlyAsnLeuProGlyCysSerPheSerIlePheLeuLeuAlaLeuLeuSer
    CysLeuThrValProAlaSerAlaLeuValValAlaGlnLeuLeuArgIleProGlnAlaIleMetAspMetIleAla
    GlyAlaHisTrpGlyValLeuAlaGlyIleAlaTyrPheSerMetValGlyAsnTrpAlaLysValLeuValValLeu
    LeuLeuPheAlaGlyValAspAlaGluThrHisValThrGlyGlySerAlaGlyArgThrThrAlaGlyLeuValGly
    LeuLeuThrProGlyAlaLysGlnAsnIleGlnLeuIleAsnThrAsnGlySerTrpHisIleAsnSerThrAlaLeu
    AsnCysAsnGluSerLeuAsnThrGlyTrpLeuAlaGlyLeuPheTyrGlnHisLysPheAsnSerSerGlyCysPro
    GluArgLeuAlaSerCysArgArgLeuThrAspPheAlaGlnGlyTrpGlyProIleSerTyrAlaAsnGlySerGly
    LeuAspGluArgProTyrCysTrpHis
    
  • Information
    Author
    Jordi Petit
    Language
    Catalan
    Other languages
    English
    Official solutions
    C++
    User solutions
    C++ Python