trackler 2.2.1.91 → 2.2.1.92

Sign up to get free protection for your applications and to get access to all the features.
Files changed (233) hide show
  1. checksums.yaml +4 -4
  2. data/lib/trackler/version.rb +1 -1
  3. data/problem-specifications/exercises/diamond/metadata.yml +1 -1
  4. data/problem-specifications/exercises/food-chain/canonical-data.json +42 -22
  5. data/problem-specifications/exercises/hello-world/canonical-data.json +2 -1
  6. data/problem-specifications/exercises/isbn-verifier/metadata.yml +2 -1
  7. data/problem-specifications/exercises/largest-series-product/canonical-data.json +62 -33
  8. data/problem-specifications/exercises/leap/canonical-data.json +14 -6
  9. data/problem-specifications/exercises/list-ops/canonical-data.json +6 -6
  10. data/problem-specifications/exercises/markdown/canonical-data.json +29 -11
  11. data/problem-specifications/exercises/minesweeper/canonical-data.json +80 -56
  12. data/problem-specifications/exercises/minesweeper/metadata.yml +1 -1
  13. data/problem-specifications/exercises/nth-prime/canonical-data.json +20 -8
  14. data/problem-specifications/exercises/nucleotide-count/canonical-data.json +17 -7
  15. data/problem-specifications/exercises/pascals-triangle/canonical-data.json +28 -10
  16. data/problem-specifications/exercises/perfect-numbers/canonical-data.json +41 -15
  17. data/problem-specifications/exercises/phone-number/canonical-data.json +44 -16
  18. data/problem-specifications/exercises/pig-latin/canonical-data.json +68 -24
  19. data/problem-specifications/exercises/reverse-string/metadata.yml +1 -1
  20. data/problem-specifications/exercises/rna-transcription/canonical-data.json +17 -7
  21. data/problem-specifications/exercises/roman-numerals/canonical-data.json +56 -20
  22. data/problem-specifications/exercises/rotational-cipher/canonical-data.json +42 -22
  23. data/problem-specifications/exercises/saddle-points/canonical-data.json +34 -24
  24. data/problem-specifications/exercises/scrabble-score/canonical-data.json +35 -13
  25. data/problem-specifications/exercises/secret-handshake/canonical-data.json +34 -12
  26. data/problem-specifications/exercises/sieve/canonical-data.json +16 -6
  27. data/problem-specifications/exercises/space-age/canonical-data.json +34 -18
  28. data/problem-specifications/exercises/spiral-matrix/canonical-data.json +19 -7
  29. data/problem-specifications/exercises/sublist/canonical-data.json +69 -35
  30. data/problem-specifications/exercises/twelve-days/canonical-data.json +61 -31
  31. data/problem-specifications/exercises/variable-length-quantity/canonical-data.json +79 -27
  32. data/problem-specifications/exercises/zebra-puzzle/canonical-data.json +3 -1
  33. data/tracks/csharp/exercises/accumulate/{HINTS.md → .meta/hints.md} +0 -0
  34. data/tracks/csharp/exercises/allergies/{HINTS.md → .meta/hints.md} +0 -0
  35. data/tracks/csharp/exercises/alphametics/{HINTS.md → .meta/hints.md} +0 -0
  36. data/tracks/csharp/exercises/bank-account/{HINTS.md → .meta/hints.md} +0 -0
  37. data/tracks/csharp/exercises/beer-song/{HINTS.md → .meta/hints.md} +0 -0
  38. data/tracks/csharp/exercises/clock/{HINTS.md → .meta/hints.md} +0 -0
  39. data/tracks/csharp/exercises/custom-set/{HINTS.md → .meta/hints.md} +0 -0
  40. data/tracks/csharp/exercises/diamond/{HINTS.md → .meta/hints.md} +0 -0
  41. data/tracks/csharp/exercises/difference-of-squares/{HINTS.md → .meta/hints.md} +0 -0
  42. data/tracks/csharp/exercises/diffie-hellman/{HINTS.md → .meta/hints.md} +0 -0
  43. data/tracks/csharp/exercises/dot-dsl/{HINTS.md → .meta/hints.md} +0 -0
  44. data/tracks/csharp/exercises/food-chain/{HINTS.md → .meta/hints.md} +0 -0
  45. data/tracks/csharp/exercises/forth/{HINTS.md → .meta/hints.md} +0 -0
  46. data/tracks/csharp/exercises/hangman/{HINTS.md → .meta/hints.md} +0 -0
  47. data/tracks/csharp/exercises/house/{HINTS.md → .meta/hints.md} +0 -0
  48. data/tracks/csharp/exercises/list-ops/{HINTS.md → .meta/hints.md} +0 -0
  49. data/tracks/csharp/exercises/markdown/{HINTS.md → .meta/hints.md} +0 -0
  50. data/tracks/csharp/exercises/nth-prime/{HINTS.md → .meta/hints.md} +0 -0
  51. data/tracks/csharp/exercises/nucleotide-count/{HINTS.md → .meta/hints.md} +0 -0
  52. data/tracks/csharp/exercises/palindrome-products/{HINTS.md → .meta/hints.md} +0 -0
  53. data/tracks/csharp/exercises/proverb/{HINTS.md → .meta/hints.md} +0 -0
  54. data/tracks/csharp/exercises/react/{HINTS.md → .meta/hints.md} +0 -0
  55. data/tracks/csharp/exercises/roman-numerals/{HINTS.md → .meta/hints.md} +0 -0
  56. data/tracks/csharp/exercises/saddle-points/{HINTS.md → .meta/hints.md} +0 -0
  57. data/tracks/csharp/exercises/sgf-parsing/{HINTS.md → .meta/hints.md} +0 -0
  58. data/tracks/csharp/exercises/simple-linked-list/{HINTS.md → .meta/hints.md} +0 -0
  59. data/tracks/csharp/exercises/sublist/{HINTS.md → .meta/hints.md} +0 -0
  60. data/tracks/csharp/exercises/sum-of-multiples/{HINTS.md → .meta/hints.md} +0 -0
  61. data/tracks/csharp/exercises/twelve-days/{HINTS.md → .meta/hints.md} +0 -0
  62. data/tracks/csharp/exercises/variable-length-quantity/{HINTS.md → .meta/hints.md} +0 -0
  63. data/tracks/csharp/exercises/word-search/{HINTS.md → .meta/hints.md} +0 -0
  64. data/tracks/csharp/exercises/wordy/{HINTS.md → .meta/hints.md} +0 -0
  65. data/tracks/csharp/exercises/zebra-puzzle/{HINTS.md → .meta/hints.md} +0 -0
  66. data/tracks/csharp/exercises/zipper/{HINTS.md → .meta/hints.md} +0 -0
  67. data/tracks/delphi/exercises/secret-handshake/uTestSecretHandshake.pas +1 -1
  68. data/tracks/elixir/config/exercise_readme.go.tmpl +34 -4
  69. data/tracks/elixir/exercises/accumulate/README.md +1 -6
  70. data/tracks/elixir/exercises/acronym/README.md +1 -4
  71. data/tracks/elixir/exercises/all-your-base/README.md +2 -5
  72. data/tracks/elixir/exercises/allergies/README.md +1 -4
  73. data/tracks/elixir/exercises/anagram/README.md +1 -3
  74. data/tracks/elixir/exercises/atbash-cipher/README.md +3 -4
  75. data/tracks/elixir/exercises/bank-account/README.md +1 -4
  76. data/tracks/elixir/exercises/beer-song/README.md +3 -5
  77. data/tracks/elixir/exercises/binary-search-tree/README.md +43 -0
  78. data/tracks/elixir/exercises/binary-search/README.md +1 -3
  79. data/tracks/elixir/exercises/binary/README.md +3 -3
  80. data/tracks/elixir/exercises/bob/README.md +2 -2
  81. data/tracks/elixir/exercises/bowling/README.md +21 -9
  82. data/tracks/elixir/exercises/bracket-push/README.md +1 -3
  83. data/tracks/elixir/exercises/change/README.md +2 -4
  84. data/tracks/elixir/exercises/clock/README.md +1 -3
  85. data/tracks/elixir/exercises/collatz-conjecture/README.md +2 -4
  86. data/tracks/elixir/exercises/connect/README.md +2 -5
  87. data/tracks/elixir/exercises/crypto-square/README.md +11 -11
  88. data/tracks/elixir/exercises/custom-set/README.md +1 -4
  89. data/tracks/elixir/exercises/diamond/README.md +7 -9
  90. data/tracks/elixir/exercises/difference-of-squares/README.md +1 -3
  91. data/tracks/elixir/exercises/diffie-hellman/{HINTS.md → .meta/hints.md} +0 -0
  92. data/tracks/elixir/exercises/diffie-hellman/README.md +1 -3
  93. data/tracks/elixir/exercises/dominoes/README.md +4 -7
  94. data/tracks/elixir/exercises/dot-dsl/README.md +2 -5
  95. data/tracks/elixir/exercises/etl/README.md +4 -4
  96. data/tracks/elixir/exercises/flatten-array/README.md +2 -5
  97. data/tracks/elixir/exercises/forth/README.md +1 -4
  98. data/tracks/elixir/exercises/gigasecond/README.md +1 -3
  99. data/tracks/elixir/exercises/grade-school/README.md +1 -4
  100. data/tracks/elixir/exercises/grains/README.md +1 -4
  101. data/tracks/elixir/exercises/grep/README.md +13 -15
  102. data/tracks/elixir/exercises/hamming/README.md +1 -3
  103. data/tracks/elixir/exercises/hello-world/README.md +23 -0
  104. data/tracks/elixir/exercises/hexadecimal/README.md +1 -3
  105. data/tracks/elixir/exercises/isbn-verifier/README.md +26 -24
  106. data/tracks/elixir/exercises/isogram/README.md +3 -4
  107. data/tracks/elixir/exercises/kindergarten-garden/README.md +14 -16
  108. data/tracks/elixir/exercises/largest-series-product/README.md +1 -3
  109. data/tracks/elixir/exercises/leap/README.md +2 -4
  110. data/tracks/elixir/exercises/list-ops/README.md +1 -4
  111. data/tracks/elixir/exercises/luhn/README.md +8 -10
  112. data/tracks/elixir/exercises/markdown/README.md +1 -4
  113. data/tracks/elixir/exercises/matrix/README.md +7 -7
  114. data/tracks/elixir/exercises/meetup/README.md +17 -16
  115. data/tracks/elixir/exercises/minesweeper/README.md +1 -4
  116. data/tracks/elixir/exercises/nth-prime/README.md +1 -3
  117. data/tracks/elixir/exercises/nucleotide-count/README.md +9 -25
  118. data/tracks/elixir/exercises/ocr-numbers/README.md +7 -9
  119. data/tracks/elixir/exercises/palindrome-products/README.md +16 -19
  120. data/tracks/elixir/exercises/pangram/README.md +2 -4
  121. data/tracks/elixir/exercises/parallel-letter-frequency/README.md +1 -4
  122. data/tracks/elixir/exercises/pascals-triangle/README.md +3 -5
  123. data/tracks/elixir/exercises/perfect-numbers/README.md +3 -5
  124. data/tracks/elixir/exercises/phone-number/README.md +5 -6
  125. data/tracks/elixir/exercises/pig-latin/README.md +1 -3
  126. data/tracks/elixir/exercises/poker/README.md +1 -3
  127. data/tracks/elixir/exercises/prime-factors/README.md +1 -3
  128. data/tracks/elixir/exercises/protein-translation/README.md +3 -6
  129. data/tracks/elixir/exercises/pythagorean-triplet/README.md +4 -6
  130. data/tracks/elixir/exercises/queen-attack/README.md +2 -4
  131. data/tracks/elixir/exercises/rail-fence-cipher/README.md +13 -10
  132. data/tracks/elixir/exercises/raindrops/README.md +1 -3
  133. data/tracks/elixir/exercises/rna-transcription/README.md +2 -4
  134. data/tracks/elixir/exercises/robot-simulator/README.md +1 -3
  135. data/tracks/elixir/exercises/roman-numerals/README.md +2 -4
  136. data/tracks/elixir/exercises/rotational-cipher/README.md +3 -4
  137. data/tracks/elixir/exercises/run-length-encoding/README.md +5 -7
  138. data/tracks/elixir/exercises/saddle-points/README.md +3 -5
  139. data/tracks/elixir/exercises/say/README.md +1 -3
  140. data/tracks/elixir/exercises/scale-generator/README.md +1 -5
  141. data/tracks/elixir/exercises/scrabble-score/README.md +4 -4
  142. data/tracks/elixir/exercises/secret-handshake/{HINTS.md → .meta/hints.md} +0 -0
  143. data/tracks/elixir/exercises/secret-handshake/README.md +4 -4
  144. data/tracks/elixir/exercises/series/README.md +1 -3
  145. data/tracks/elixir/exercises/sieve/README.md +1 -3
  146. data/tracks/elixir/exercises/simple-cipher/README.md +6 -10
  147. data/tracks/elixir/exercises/simple-linked-list/README.md +1 -3
  148. data/tracks/elixir/exercises/space-age/README.md +2 -4
  149. data/tracks/elixir/exercises/spiral-matrix/README.md +5 -5
  150. data/tracks/elixir/exercises/strain/{HINTS.md → .meta/hints.md} +0 -0
  151. data/tracks/elixir/exercises/strain/README.md +1 -3
  152. data/tracks/elixir/exercises/sublist/README.md +1 -4
  153. data/tracks/elixir/exercises/sum-of-multiples/README.md +4 -9
  154. data/tracks/elixir/exercises/tournament/{HINTS.md → .meta/hints.md} +0 -0
  155. data/tracks/elixir/exercises/tournament/README.md +6 -9
  156. data/tracks/elixir/exercises/transpose/README.md +6 -7
  157. data/tracks/elixir/exercises/triangle/README.md +10 -9
  158. data/tracks/elixir/exercises/twelve-days/README.md +2 -4
  159. data/tracks/elixir/exercises/word-count/README.md +2 -5
  160. data/tracks/elixir/exercises/wordy/README.md +1 -8
  161. data/tracks/elixir/exercises/zipper/README.md +2 -5
  162. data/tracks/fortran/README.md +1 -1
  163. data/tracks/fsharp/config/exercise_readme.go.tmpl +0 -3
  164. data/tracks/fsharp/exercises/accumulate/{HINTS.md → .meta/hints.md} +0 -0
  165. data/tracks/fsharp/exercises/alphametics/{HINTS.md → .meta/hints.md} +0 -0
  166. data/tracks/fsharp/exercises/beer-song/{HINTS.md → .meta/hints.md} +0 -0
  167. data/tracks/fsharp/exercises/diamond/{HINTS.md → .meta/hints.md} +0 -0
  168. data/tracks/fsharp/exercises/difference-of-squares/{HINTS.md → .meta/hints.md} +0 -0
  169. data/tracks/fsharp/exercises/diffie-hellman/{HINTS.md → .meta/hints.md} +0 -0
  170. data/tracks/fsharp/exercises/food-chain/{HINTS.md → .meta/hints.md} +0 -0
  171. data/tracks/fsharp/exercises/gigasecond/{HINTS.md → .meta/hints.md} +0 -0
  172. data/tracks/fsharp/exercises/grade-school/{HINTS.md → .meta/hints.md} +0 -0
  173. data/tracks/fsharp/exercises/grains/{HINTS.md → .meta/hints.md} +0 -0
  174. data/tracks/fsharp/exercises/house/{HINTS.md → .meta/hints.md} +0 -0
  175. data/tracks/fsharp/exercises/lens-person/{HINTS.md → .meta/hints.md} +0 -0
  176. data/tracks/fsharp/exercises/linked-list/{HINTS.md → .meta/hints.md} +0 -0
  177. data/tracks/fsharp/exercises/nth-prime/{HINTS.md → .meta/hints.md} +0 -0
  178. data/tracks/fsharp/exercises/palindrome-products/{HINTS.md → .meta/hints.md} +0 -0
  179. data/tracks/fsharp/exercises/parallel-letter-frequency/{HINTS.md → .meta/hints.md} +0 -0
  180. data/tracks/fsharp/exercises/poker/{HINTS.md → .meta/hints.md} +0 -0
  181. data/tracks/fsharp/exercises/proverb/{HINTS.md → .meta/hints.md} +0 -0
  182. data/tracks/fsharp/exercises/raindrops/{HINTS.md → .meta/hints.md} +0 -0
  183. data/tracks/fsharp/exercises/rna-transcription/{HINTS.md → .meta/hints.md} +0 -0
  184. data/tracks/fsharp/exercises/space-age/{HINTS.md → .meta/hints.md} +0 -0
  185. data/tracks/fsharp/exercises/twelve-days/{HINTS.md → .meta/hints.md} +0 -0
  186. data/tracks/fsharp/exercises/wordy/{HINTS.md → .meta/hints.md} +0 -0
  187. data/tracks/java/exercises/acronym/.meta/version +1 -1
  188. data/tracks/java/exercises/acronym/src/test/java/AcronymTest.java +6 -6
  189. data/tracks/java/exercises/raindrops/.meta/version +1 -0
  190. data/tracks/java/exercises/raindrops/src/test/java/RaindropConverterTest.java +3 -1
  191. data/tracks/java/exercises/transpose/src/test/java/TransposeTest.java +5 -5
  192. data/tracks/java/exercises/word-count/.meta/src/reference/java/WordCount.java +1 -1
  193. data/tracks/java/exercises/word-count/.meta/version +1 -0
  194. data/tracks/java/exercises/word-count/src/test/java/WordCountTest.java +73 -3
  195. data/tracks/mips/config/exercise_readme.go.tmpl +0 -3
  196. data/tracks/perl5/config/exercise_readme.go.tmpl +0 -3
  197. data/tracks/php/exercises/bob/{HINTS.md → .meta/hints.md} +0 -0
  198. data/tracks/php/exercises/roman-numerals/roman-numerals_test.php +1 -1
  199. data/tracks/pony/config/exercise_readme.go.tmpl +0 -3
  200. data/tracks/python/config.json +14 -0
  201. data/tracks/python/exercises/isbn-verifier/README.md +43 -0
  202. data/tracks/python/exercises/isbn-verifier/example.py +8 -0
  203. data/tracks/python/exercises/isbn-verifier/isbn_verifier.py +2 -0
  204. data/tracks/python/exercises/isbn-verifier/isbn_verifier_test.py +54 -0
  205. data/tracks/rust/exercises/atbash-cipher/example.rs +0 -2
  206. data/tracks/rust/exercises/bracket-push/{HINTS.md → .meta/hints.md} +0 -0
  207. data/tracks/rust/exercises/crypto-square/example.rs +0 -2
  208. data/tracks/rust/exercises/etl/example.rs +0 -1
  209. data/tracks/rust/exercises/forth/example.rs +0 -1
  210. data/tracks/rust/exercises/largest-series-product/{HINTS.md → .meta/hints.md} +0 -0
  211. data/tracks/rust/exercises/pangram/example.rs +0 -1
  212. data/tracks/rust/exercises/parallel-letter-frequency/{HINTS.md → .meta/hints.md} +0 -0
  213. data/tracks/rust/exercises/scrabble-score/tests/scrabble-score.rs +9 -2
  214. data/tracks/rust/exercises/space-age/{HINTS.md → .meta/hints.md} +0 -0
  215. data/tracks/rust/exercises/triangle/{HINTS.md → .meta/hints.md} +0 -0
  216. data/tracks/scala/exercises/bank-account/{HINTS.md → .meta/hints.md} +0 -0
  217. data/tracks/scala/exercises/connect/{HINTS.md → .meta/hints.md} +0 -0
  218. data/tracks/scala/exercises/gigasecond/{HINTS.md → .meta/hints.md} +0 -0
  219. data/tracks/scala/exercises/hamming/{HINTS.md → .meta/hints.md} +0 -0
  220. data/tracks/scala/exercises/hello-world/{HINTS.md → .meta/hints.md} +0 -0
  221. data/tracks/scala/exercises/leap/{HINTS.md → .meta/hints.md} +0 -0
  222. data/tracks/scala/exercises/nucleotide-count/{HINTS.md → .meta/hints.md} +0 -0
  223. data/tracks/scala/exercises/parallel-letter-frequency/{HINTS.md → .meta/hints.md} +0 -0
  224. data/tracks/scala/exercises/phone-number/{HINTS.md → .meta/hints.md} +0 -0
  225. data/tracks/scala/exercises/robot-name/{HINTS.md → .meta/hints.md} +0 -0
  226. data/tracks/scala/exercises/roman-numerals/{HINTS.md → .meta/hints.md} +0 -0
  227. data/tracks/scala/exercises/variable-length-quantity/{HINTS.md → .meta/hints.md} +0 -0
  228. metadata +87 -86
  229. data/tracks/elixir/docs/EXERCISE_README_INSERT.md +0 -35
  230. data/tracks/fsharp/docs/EXERCISE_README_INSERT.md +0 -0
  231. data/tracks/mips/docs/EXERCISE_README_INSERT.md +0 -0
  232. data/tracks/perl5/docs/EXERCISE_README_INSERT.md +0 -0
  233. data/tracks/pony/docs/EXERCISE_README_INSERT.md +0 -0
@@ -10,11 +10,9 @@ overview of poker hands.
10
10
  Execute the tests with:
11
11
 
12
12
  ```bash
13
- $ elixir bob_test.exs
13
+ $ elixir poker_test.exs
14
14
  ```
15
15
 
16
- (Replace `bob_test.exs` with the name of the test file.)
17
-
18
16
  ### Pending tests
19
17
 
20
18
  In the test suites, all but the first test have been skipped.
@@ -34,11 +34,9 @@ You can check this yourself:
34
34
  Execute the tests with:
35
35
 
36
36
  ```bash
37
- $ elixir bob_test.exs
37
+ $ elixir prime_factors_test.exs
38
38
  ```
39
39
 
40
- (Replace `bob_test.exs` with the name of the test file.)
41
-
42
40
  ### Pending tests
43
41
 
44
42
  In the test suites, all but the first test have been skipped.
@@ -14,13 +14,13 @@ Protein: `"Methionine", "Phenylalanine", "Serine"`
14
14
  There are 64 codons which in turn correspond to 20 amino acids; however, all of the codon sequences and resulting amino acids are not important in this exercise. If it works for one codon, the program should work for all of them.
15
15
  However, feel free to expand the list in the test suite to include them all.
16
16
 
17
- There are also four terminating codons (also known as 'STOP' codons); if any of these codons are encountered (by the ribosome), all translation ends and the protein is terminated.
17
+ There are also three terminating codons (also known as 'STOP' codons); if any of these codons are encountered (by the ribosome), all translation ends and the protein is terminated.
18
18
 
19
19
  All subsequent codons after are ignored, like this:
20
20
 
21
21
  RNA: `"AUGUUUUCUUAAAUG"` =>
22
22
 
23
- Codons: `"AUG", "UUU", "UCU", "UAA", "AUG"` =>
23
+ Codons: `"AUG", "UUU", "UCU", "UAG", "AUG"` =>
24
24
 
25
25
  Protein: `"Methionine", "Phenylalanine", "Serine"`
26
26
 
@@ -46,11 +46,9 @@ Learn more about [protein translation on Wikipedia](http://en.wikipedia.org/wiki
46
46
  Execute the tests with:
47
47
 
48
48
  ```bash
49
- $ elixir bob_test.exs
49
+ $ elixir protein_translation_test.exs
50
50
  ```
51
51
 
52
- (Replace `bob_test.exs` with the name of the test file.)
53
-
54
52
  ### Pending tests
55
53
 
56
54
  In the test suites, all but the first test have been skipped.
@@ -82,5 +80,4 @@ see the [help page](http://exercism.io/languages/elixir).
82
80
  Tyler Long
83
81
 
84
82
  ## Submitting Incomplete Solutions
85
-
86
83
  It's possible to submit an incomplete solution so you can see how others have completed the exercise.
@@ -3,13 +3,13 @@
3
3
  A Pythagorean triplet is a set of three natural numbers, {a, b, c}, for
4
4
  which,
5
5
 
6
- ```
6
+ ```text
7
7
  a**2 + b**2 = c**2
8
8
  ```
9
9
 
10
- For example,
10
+ For example,
11
11
 
12
- ```
12
+ ```text
13
13
  3**2 + 4**2 = 9 + 16 = 25 = 5**2.
14
14
  ```
15
15
 
@@ -22,11 +22,9 @@ Find the product a * b * c.
22
22
  Execute the tests with:
23
23
 
24
24
  ```bash
25
- $ elixir bob_test.exs
25
+ $ elixir pythagorean_triplet_test.exs
26
26
  ```
27
27
 
28
- (Replace `bob_test.exs` with the name of the test file.)
29
-
30
28
  ### Pending tests
31
29
 
32
30
  In the test suites, all but the first test have been skipped.
@@ -11,7 +11,7 @@ A chessboard can be represented by an 8 by 8 array.
11
11
  So if you're told the white queen is at (2, 3) and the black queen at
12
12
  (5, 6), then you'd know you've got a set-up like so:
13
13
 
14
- ```plain
14
+ ```text
15
15
  _ _ _ _ _ _ _ _
16
16
  _ _ _ _ _ _ _ _
17
17
  _ _ _ W _ _ _ _
@@ -31,11 +31,9 @@ share a diagonal.
31
31
  Execute the tests with:
32
32
 
33
33
  ```bash
34
- $ elixir bob_test.exs
34
+ $ elixir queen_attack_test.exs
35
35
  ```
36
36
 
37
- (Replace `bob_test.exs` with the name of the test file.)
38
-
39
37
  ### Pending tests
40
38
 
41
39
  In the test suites, all but the first test have been skipped.
@@ -11,41 +11,46 @@ Finally the message is then read off in rows.
11
11
 
12
12
  For example, using three "rails" and the message "WE ARE DISCOVERED FLEE AT ONCE",
13
13
  the cipherer writes out:
14
- ```
14
+
15
+ ```text
15
16
  W . . . E . . . C . . . R . . . L . . . T . . . E
16
17
  . E . R . D . S . O . E . E . F . E . A . O . C .
17
18
  . . A . . . I . . . V . . . D . . . E . . . N . .
18
19
  ```
19
20
 
20
21
  Then reads off:
21
- ```
22
+
23
+ ```text
22
24
  WECRLTEERDSOEEFEAOCAIVDEN
23
25
  ```
24
26
 
25
-
26
27
  To decrypt a message you take the zig-zag shape and fill the ciphertext along the rows.
27
- ```
28
+
29
+ ```text
28
30
  ? . . . ? . . . ? . . . ? . . . ? . . . ? . . . ?
29
31
  . ? . ? . ? . ? . ? . ? . ? . ? . ? . ? . ? . ? .
30
32
  . . ? . . . ? . . . ? . . . ? . . . ? . . . ? . .
31
33
  ```
32
34
 
33
35
  The first row has seven spots that can be filled with "WECRLTE".
34
- ```
36
+
37
+ ```text
35
38
  W . . . E . . . C . . . R . . . L . . . T . . . E
36
39
  . ? . ? . ? . ? . ? . ? . ? . ? . ? . ? . ? . ? .
37
40
  . . ? . . . ? . . . ? . . . ? . . . ? . . . ? . .
38
41
  ```
39
42
 
40
43
  Now the 2nd row takes "ERDSOEEFEAOC".
41
- ```
44
+
45
+ ```text
42
46
  W . . . E . . . C . . . R . . . L . . . T . . . E
43
47
  . E . R . D . S . O . E . E . F . E . A . O . C .
44
48
  . . ? . . . ? . . . ? . . . ? . . . ? . . . ? . .
45
49
  ```
46
50
 
47
51
  Leaving "AIVDEN" for the last row.
48
- ```
52
+
53
+ ```text
49
54
  W . . . E . . . C . . . R . . . L . . . T . . . E
50
55
  . E . R . D . S . O . E . E . F . E . A . O . C .
51
56
  . . A . . . I . . . V . . . D . . . E . . . N . .
@@ -58,11 +63,9 @@ If you now read along the zig-zag shape you can read the original message.
58
63
  Execute the tests with:
59
64
 
60
65
  ```bash
61
- $ elixir bob_test.exs
66
+ $ elixir rail_fence_cipher_test.exs
62
67
  ```
63
68
 
64
- (Replace `bob_test.exs` with the name of the test file.)
65
-
66
69
  ### Pending tests
67
70
 
68
71
  In the test suites, all but the first test have been skipped.
@@ -22,11 +22,9 @@ Convert a number to a string, the contents of which depend on the number's facto
22
22
  Execute the tests with:
23
23
 
24
24
  ```bash
25
- $ elixir bob_test.exs
25
+ $ elixir raindrops_test.exs
26
26
  ```
27
27
 
28
- (Replace `bob_test.exs` with the name of the test file.)
29
-
30
28
  ### Pending tests
31
29
 
32
30
  In the test suites, all but the first test have been skipped.
@@ -1,4 +1,4 @@
1
- # Rna Transcription
1
+ # RNA Transcription
2
2
 
3
3
  Given a DNA strand, return its RNA complement (per RNA transcription).
4
4
 
@@ -23,11 +23,9 @@ each nucleotide with its complement:
23
23
  Execute the tests with:
24
24
 
25
25
  ```bash
26
- $ elixir bob_test.exs
26
+ $ elixir rna_transcription_test.exs
27
27
  ```
28
28
 
29
- (Replace `bob_test.exs` with the name of the test file.)
30
-
31
29
  ### Pending tests
32
30
 
33
31
  In the test suites, all but the first test have been skipped.
@@ -32,11 +32,9 @@ direction it is pointing.
32
32
  Execute the tests with:
33
33
 
34
34
  ```bash
35
- $ elixir bob_test.exs
35
+ $ elixir robot_simulator_test.exs
36
36
  ```
37
37
 
38
- (Replace `bob_test.exs` with the name of the test file.)
39
-
40
38
  ### Pending tests
41
39
 
42
40
  In the test suites, all but the first test have been skipped.
@@ -14,7 +14,7 @@ The Romans wrote numbers using letters - I, V, X, L, C, D, M. (notice
14
14
  these letters have lots of straight lines and are hence easy to hack
15
15
  into stone tablets).
16
16
 
17
- ```
17
+ ```text
18
18
  1 => I
19
19
  10 => X
20
20
  7 => VII
@@ -47,11 +47,9 @@ See also: http://www.novaroma.org/via_romana/numbers.html
47
47
  Execute the tests with:
48
48
 
49
49
  ```bash
50
- $ elixir bob_test.exs
50
+ $ elixir roman_numerals_test.exs
51
51
  ```
52
52
 
53
- (Replace `bob_test.exs` with the name of the test file.)
54
-
55
53
  ### Pending tests
56
54
 
57
55
  In the test suites, all but the first test have been skipped.
@@ -13,7 +13,7 @@ The most commonly used rotational cipher is `ROT13`.
13
13
 
14
14
  A `ROT13` on the Latin alphabet would be as follows:
15
15
 
16
- ```plain
16
+ ```text
17
17
  Plain: abcdefghijklmnopqrstuvwxyz
18
18
  Cipher: nopqrstuvwxyzabcdefghijklm
19
19
  ```
@@ -23,6 +23,7 @@ It is stronger than the Atbash cipher because it has 27 possible keys, and 25 us
23
23
  Ciphertext is written out in the same formatting as the input including spaces and punctuation.
24
24
 
25
25
  ## Examples
26
+
26
27
  - ROT5 `omg` gives `trl`
27
28
  - ROT0 `c` gives `c`
28
29
  - ROT26 `Cool` gives `Cool`
@@ -34,11 +35,9 @@ Ciphertext is written out in the same formatting as the input including spaces a
34
35
  Execute the tests with:
35
36
 
36
37
  ```bash
37
- $ elixir bob_test.exs
38
+ $ elixir rotational_cipher_test.exs
38
39
  ```
39
40
 
40
- (Replace `bob_test.exs` with the name of the test file.)
41
-
42
41
  ### Pending tests
43
42
 
44
43
  In the test suites, all but the first test have been skipped.
@@ -7,20 +7,20 @@ Run-length encoding (RLE) is a simple form of data compression, where runs
7
7
 
8
8
  For example we can represent the original 53 characters with only 13.
9
9
 
10
- ```
10
+ ```text
11
11
  "WWWWWWWWWWWWBWWWWWWWWWWWWBBBWWWWWWWWWWWWWWWWWWWWWWWWB" -> "12WB12W3B24WB"
12
12
  ```
13
13
 
14
14
  RLE allows the original data to be perfectly reconstructed from
15
15
  the compressed data, which makes it a lossless data compression.
16
16
 
17
- ```
17
+ ```text
18
18
  "AABCCCDEEEE" -> "2AB3CD4E" -> "AABCCCDEEEE"
19
19
  ```
20
20
 
21
21
  For simplicity, you can assume that the unencoded string will only contain
22
- the letters A through Z (either lower or upper case) and whitespace. This way
23
- data to be encoded will never contain any numbers and numbers inside data to
22
+ the letters A through Z (either lower or upper case) and whitespace. This way
23
+ data to be encoded will never contain any numbers and numbers inside data to
24
24
  be decoded always represent the count for the following character.
25
25
 
26
26
  ## Running tests
@@ -28,11 +28,9 @@ be decoded always represent the count for the following character.
28
28
  Execute the tests with:
29
29
 
30
30
  ```bash
31
- $ elixir bob_test.exs
31
+ $ elixir run_length_encoding_test.exs
32
32
  ```
33
33
 
34
- (Replace `bob_test.exs` with the name of the test file.)
35
-
36
34
  ### Pending tests
37
35
 
38
36
  In the test suites, all but the first test have been skipped.
@@ -4,7 +4,7 @@ Detect saddle points in a matrix.
4
4
 
5
5
  So say you have a matrix like so:
6
6
 
7
- ```plain
7
+ ```text
8
8
  0 1 2
9
9
  |---------
10
10
  0 | 9 8 7
@@ -15,7 +15,7 @@ So say you have a matrix like so:
15
15
  It has a saddle point at (1, 0).
16
16
 
17
17
  It's called a "saddle point" because it is greater than or equal to
18
- every element in its row and the less than or equal to every element in
18
+ every element in its row and less than or equal to every element in
19
19
  its column.
20
20
 
21
21
  A matrix may have zero or more saddle points.
@@ -31,11 +31,9 @@ but the tests for this exercise follow the above unambiguous definition.
31
31
  Execute the tests with:
32
32
 
33
33
  ```bash
34
- $ elixir bob_test.exs
34
+ $ elixir saddle_points_test.exs
35
35
  ```
36
36
 
37
- (Replace `bob_test.exs` with the name of the test file.)
38
-
39
37
  ### Pending tests
40
38
 
41
39
  In the test suites, all but the first test have been skipped.
@@ -67,11 +67,9 @@ Use _and_ (correctly) when spelling out the number in English:
67
67
  Execute the tests with:
68
68
 
69
69
  ```bash
70
- $ elixir bob_test.exs
70
+ $ elixir say_test.exs
71
71
  ```
72
72
 
73
- (Replace `bob_test.exs` with the name of the test file.)
74
-
75
73
  ### Pending tests
76
74
 
77
75
  In the test suites, all but the first test have been skipped.
@@ -32,7 +32,6 @@ Use Flats:
32
32
  F, Bb, Eb, Ab, Db, Gb major
33
33
  d, g, c, f, bb, eb minor
34
34
 
35
-
36
35
  The diatonic scales, and all other scales that derive from the
37
36
  chromatic scale, are built upon intervals. An interval is the space
38
37
  between two pitches.
@@ -61,11 +60,9 @@ Here is a table of pitches with the names of their interval distance from the to
61
60
  Execute the tests with:
62
61
 
63
62
  ```bash
64
- $ elixir bob_test.exs
63
+ $ elixir scale_generator_test.exs
65
64
  ```
66
65
 
67
- (Replace `bob_test.exs` with the name of the test file.)
68
-
69
66
  ### Pending tests
70
67
 
71
68
  In the test suites, all but the first test have been skipped.
@@ -92,6 +89,5 @@ Or, you can enable all the tests by commenting out the
92
89
  For more detailed information about the Elixir track, please
93
90
  see the [help page](http://exercism.io/languages/elixir).
94
91
 
95
-
96
92
  ## Submitting Incomplete Solutions
97
93
  It's possible to submit an incomplete solution so you can see how others have completed the exercise.
@@ -6,7 +6,7 @@ Given a word, compute the scrabble score for that word.
6
6
 
7
7
  You'll need these:
8
8
 
9
- ```plain
9
+ ```text
10
10
  Letter Value
11
11
  A, E, I, O, U, L, N, R, S, T 1
12
12
  D, G 2
@@ -18,6 +18,7 @@ Q, Z 10
18
18
  ```
19
19
 
20
20
  ## Examples
21
+
21
22
  "cabbage" should be scored as worth 14 points:
22
23
 
23
24
  - 3 points for C
@@ -34,6 +35,7 @@ And to total:
34
35
  - = 14
35
36
 
36
37
  ## Extensions
38
+
37
39
  - You can play a double or a triple letter.
38
40
  - You can play a double or a triple word.
39
41
 
@@ -42,11 +44,9 @@ And to total:
42
44
  Execute the tests with:
43
45
 
44
46
  ```bash
45
- $ elixir bob_test.exs
47
+ $ elixir scrabble_score_test.exs
46
48
  ```
47
49
 
48
- (Replace `bob_test.exs` with the name of the test file.)
49
-
50
50
  ### Pending tests
51
51
 
52
52
  In the test suites, all but the first test have been skipped.
@@ -6,7 +6,7 @@
6
6
  You and your fellow cohort of those in the "know" when it comes to
7
7
  binary decide to come up with a secret "handshake".
8
8
 
9
- ```
9
+ ```text
10
10
  1 = wink
11
11
  10 = double blink
12
12
  100 = close your eyes
@@ -69,8 +69,8 @@ For example:
69
69
 
70
70
  ```elixir
71
71
  # @tag :pending
72
- test "wink for 1" do
73
- assert SecretHandshake.commands(1) == ["wink"]
72
+ test "shouting" do
73
+ assert Bob.hey("WATCH OUT!") == "Whoa, chill out!"
74
74
  end
75
75
  ```
76
76
 
@@ -86,7 +86,7 @@ see the [help page](http://exercism.io/languages/elixir).
86
86
 
87
87
  ## Source
88
88
 
89
- Bert, in Mary Poppins [http://www.imdb.com/character/ch0011238/quotes](http://www.imdb.com/character/ch0011238/quotes)
89
+ Bert, in Mary Poppins [http://www.imdb.com/title/tt0058331/quotes/qt0437047](http://www.imdb.com/title/tt0058331/quotes/qt0437047)
90
90
 
91
91
  ## Submitting Incomplete Solutions
92
92
  It's possible to submit an incomplete solution so you can see how others have completed the exercise.