Inferring mRNA from Protein
Rosalind Problem
Given: A protein string of length at most 1000 aa.
Return: The total number of different RNA strings from which the protein could have been translated, modulo 1,000,000. (Don't neglect the importance of the stop codon in protein translation.)
Sample Dataset
MA
Sample Output
12
Python Playground
p = 'MQMRTFSLSAWSVKWVRAVQHFPSEGYFEPEGWWTTCKITAMTWCFGHNNAENMYYCRYYKKNYSACAQFQLFWSQYTVRCRTGVIHPNLIKGNSLLSYHKRALQPRDTLDDTQNRFWALDAANCYSIGIYRTANPGTNNETYHIWHAWMRSDVFWMDNPMWYFCPDQSQCMGWSITPVSIWWVWTFHRCQWSDLSADNYEDISFWCNCEPVSHEASRNTDGTEFRSTCIPHCWKARECWAYPYALQGCDFMIYVVHSFGFCAFNDSFSRVMAHVVRTYKQIHQWWYQQPHIPKYVNNLIYINNFQVPSSMHTAKAFRLYYKKKTPCVSDNNGAGITHHPWECEGMIALNDLMLNKHTHCDFSWWDHKEKNCFIWCHDHIWTSTYPWCDEAQLCKDWNFTRQLWYVRFCNWKDCESGQNNSDMPRRIISMNDCMVWWPGHKAHWWEDGTYAETNQWNGLASGNEPYQNVEWEYAATTNWHAIWWQRAHHHLSFNCPCPINAQWSFLPSHLMYQYTKMEWVTSRAMYCTWPIDDARGLDGDMPHERPEIFDRPYVTHLGSNMFAGHPTGWLIKKRKTERLPVIGNENSWEYGEPGYTEYFHEWNPNNLWTRWRARIVQTNCVCVVTMYPYVNIWSQFGLPYWVTQAGDNNAGKWISWGFIGQLVCASWFMTFYTMYPMQRNCITIGWSTFGASFPRYLSDDTHVFFHLTVHSVHYFHPGAAPARPHARWLCQNHSDCGKMTTTSPQMMNQERHDHNRTDRCSRAFCTMITKDICSTQWMTGWTRNSWICIQATEERVYAIYLSYRCKDMGHHHVSMNEKAVSHGNMFNLLDHPAELRVGENNVCATVGIPVMEATWGRTTWGYENLIYLWFESHQAANGPCQLICHNTCDEASHYWSMCICKEEVYAVQKYCTVGRCQKHYFFESAPISSNYCHQYPCKAKGAEPQRGKANHATVMHMYIRCMMKCCAANWDQACKTRQFRDMPIMPQAANIIFMKYF'
# p is given as input Protein sequence
# Write your code here
ans = 903616
Ex().has_output(ans)
success_msg("Great job!")
Use the
codon_to_aa
dictionary if necessary.
codon_to_aa = {
'AAA': 'K', 'AAC': 'N', 'AAG': 'K', 'AAU': 'N', 'ACA': 'T',
'ACC': 'T', 'ACG': 'T', 'ACU': 'T', 'AGA': 'R', 'AGC': 'S',
'AGG': 'R', 'AGU': 'S', 'AUA': 'I', 'AUC': 'I', 'AUG': 'M',
'AUU': 'I', 'CAA': 'Q', 'CAC': 'H', 'CAG': 'Q', 'CAU': 'H',
'CCA': 'P', 'CCC': 'P', 'CCG': 'P', 'CCU': 'P', 'CGA': 'R',
'CGC': 'R', 'CGG': 'R', 'CGU': 'R', 'CUA': 'L', 'CUC': 'L',
'CUG': 'L', 'CUU': 'L', 'GAA': 'E', 'GAC': 'D', 'GAG': 'E',
'GAU': 'D', 'GCA': 'A', 'GCC': 'A', 'GCG': 'A', 'GCU': 'A',
'GGA': 'G', 'GGC': 'G', 'GGG': 'G', 'GGU': 'G', 'GUA': 'V',
'GUC': 'V', 'GUG': 'V', 'GUU': 'V', 'UAC': 'Y', 'UAU': 'Y',
'UCA': 'S', 'UCC': 'S', 'UCG': 'S', 'UCU': 'S', 'UGC': 'C',
'UGG': 'W', 'UGU': 'C', 'UUA': 'L', 'UUC': 'F', 'UUG': 'L',
'UUU': 'F', 'UAA': '*', 'UAG': '*', 'UGA': '*',
}