Track
/
Rust
Rust
/
Esercizi
/
Trascrizione dell'RNA
Trascrizione dell'RNA

Trascrizione dell'RNA

Medio

Introduzione

Lavori per un'azienda di bioingegneria specializzata nello sviluppo di soluzioni terapeutiche.

Al tuo team è appena stato assegnato un nuovo progetto: sviluppare una terapia mirata per un tipo raro di tumore.

Note

È tutto molto complicato, ma l'idea di base è che a volte il corpo delle persone produce troppo di una determinata proteina. Questo può causare ogni sorta di problemi.

Ma se riesci a creare una molecola molto specifica (chiamata micro-RNA), questa può impedire che la proteina venga prodotta.

Questa tecnica si chiama interferenza a RNA.

Istruzioni

Il tuo compito è determinare il complemento RNA di una data sequenza di DNA.

Sia i filamenti di DNA che quelli di RNA sono una sequenza di nucleotidi.

I quattro nucleotidi che si trovano nel DNA sono l'adenina (A), la citosina (C), la guanina (G) e la timina (T).

I quattro nucleotidi che si trovano nell'RNA sono l'adenina (A), la citosina (C), la guanina (G) e l'uracile (U).

Data una sequenza di DNA, il suo filamento di RNA trascritto si forma sostituendo ogni nucleotide con il suo complemento:

  • G -> C
  • C -> G
  • T -> A
  • A -> U
Note

Se vuoi vedere come sono strutturati gli input e gli output, dai un'occhiata agli esempi nella suite di test.

Note sull'implementazione in Rust

Usando campi privati nelle struct con funzioni new pubbliche che restituiscono Option o Result (come qui con DNA::new e RNA::new), possiamo garantire che la rappresentazione interna di DNA sia corretta. Poiché ogni stringa di DNA valida ha una stringa di RNA valida, non serve restituire un Result/Option da into_rna.

Questo spiega le firme di tipo che vedrai nei test.

I tipi restituiti da DNA::new() e RNA::new() sono entrambi Result<Self, usize>, dove il tipo di errore usize rappresenta l'indice del primo carattere non valido (indice di carattere, non utf8).


Fonte

HyperphysicsIl link si apre in una nuova finestra o scheda
Modifica tramite GitHub Il link si apre in una nuova finestra o scheda
Rust Exercism

Vuoi iniziare Trascrizione dell'RNA?

Iscriviti a Exercism per imparare e padroneggiare Rust con 99 esercizi e il mentoring di persone reali, tutto gratis.