|
1 | 1 | # Nucleotide Count
|
2 | 2 |
|
3 |
| -Given a single stranded DNA string, compute how many times each nucleotide occurs in the string. |
| 3 | +Each of us inherits from our biological parents a set of chemical instructions known as DNA that influence how our bodies are constructed. All known life depends on DNA! |
4 | 4 |
|
5 |
| -The genetic language of every living thing on the planet is DNA. |
6 |
| -DNA is a large molecule that is built from an extremely long sequence of individual elements called nucleotides. |
7 |
| -4 types exist in DNA and these differ only slightly and can be represented as the following symbols: 'A' for adenine, 'C' for cytosine, 'G' for guanine, and 'T' thymine. |
| 5 | +> Note: You do not need to understand anything about nucleotides or DNA to complete this exercise. |
8 | 6 |
|
9 |
| -Here is an analogy: |
10 |
| -- twigs are to birds nests as |
11 |
| -- nucleotides are to DNA as |
12 |
| -- legos are to lego houses as |
13 |
| -- words are to sentences as... |
| 7 | +DNA is a long chain of other chemicals and the most important are the four nucleotides, adenine, cytosine, guanine and thymine. A single DNA chain can contain billions of these four nucleotides and the order in which they occur is important! |
| 8 | +We call the order of these nucleotides in a bit of DNA a "DNA sequence". |
| 9 | + |
| 10 | +We represent a DNA sequence as an ordered collection of these four nucleotides and a common way to do that is with a string of characters such as "ATTACG" for a DNA sequence of 6 nucleotides. |
| 11 | +'A' for adenine, 'C' for cytosine, 'G' for guanine, and 'T' for thymine. |
| 12 | + |
| 13 | +Given a string representing a DNA sequence, count how many of each nucleotide is present. |
| 14 | +If the string contains characters that aren't A, C, G, or T then it is invalid and you should signal an error. |
| 15 | + |
| 16 | +For example: |
| 17 | + |
| 18 | +``` |
| 19 | +"GATTACA" -> 'A': 3, 'C': 1, 'G': 1, 'T': 2 |
| 20 | +"INVALID" -> error |
| 21 | +``` |
14 | 22 |
|
15 | 23 | ## Rust Installation
|
16 | 24 |
|
|
0 commit comments