Voltar para os desafios
Fácil 0 resolvidos 0% de aceitação

DNA to RNA Transcription

Build an RNA string by replacing every DNA character with its partner.

O que você vai aprender

  • Traduzir caracteres com uma tabela de consulta
  • Montar uma string nova com os caracteres traduzidos
  • Processar cada caractere de uma sequência

Problema

Build an RNA string by replacing every DNA character with its partner. Use this complete mapping: A → U, C → G, G → C, T → A. Preserve the original order. No biology knowledge is needed.

Implement dna_to_rna(dna).

Input

dna: The DNA string to transform.

Output

Return the transformed string. Empty input returns an empty string.

Restrições

0 ≤ DNA length ≤ 100,000. Characters are uppercase A, C, G, or T.

Exemplos

Exemplo 1
Entrada:
dna = "ACGT"

Saída esperada:
expected = "UGCA"
Entrada:
std::string dna = "ACGT";

Saída esperada:
std::string expected = "UGCA";
Entrada:
string dna = "ACGT";

Saída esperada:
string expected = "UGCA";

Explicação

A becomes U, C becomes G, G becomes C, and T becomes A, giving UGCA.

Exemplo 2
Entrada:
dna = ""

Saída esperada:
expected = ""
Entrada:
std::string dna = "";

Saída esperada:
std::string expected = "";
Entrada:
string dna = "";

Saída esperada:
string expected = "";

Explicação

There are no characters to replace, so the result is empty.

Como abordar

Tente sozinho primeiro e depois abra uma dica de cada vez.

Dica 1

Cada letra do DNA mapeia para exatamente uma letra de RNA, então traduza caractere por caractere.

Dica 2

Use uma busca direta para os quatro símbolos válidos, preservando a ordem original.

Dica 3

Uma entrada vazia deve retornar uma string vazia, e todo caractere já é garantidamente válido.

Complexidade esperada

tempo O(n), espaço extra O(n)

Referências

Este desafio foi adaptado para o CodeUtility. Siga o enunciado e as restrições acima.

Aprenda com outros

Soluções da comunidade

Ainda não há soluções publicadas. Resolva este desafio para compartilhar a primeira.