trackler 2.2.1.10 → 2.2.1.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.gitmodules +3 -0
- data/lib/trackler/version.rb +1 -1
- data/problem-specifications/CONTRIBUTING.md +1 -1
- data/problem-specifications/TOPICS.txt +1 -0
- data/problem-specifications/exercises/accumulate/description.md +0 -3
- data/problem-specifications/exercises/hamming/canonical-data.json +3 -3
- data/problem-specifications/exercises/house/canonical-data.json +322 -0
- data/problem-specifications/exercises/palindrome-products/description.md +2 -2
- data/problem-specifications/exercises/simple-cipher/description.md +1 -1
- data/tracks/bash/config.json +0 -11
- data/tracks/cpp/docs/ABOUT.md +12 -37
- data/tracks/csharp/config.json +37 -0
- data/tracks/csharp/config/maintainers.json +10 -0
- data/tracks/csharp/docs/ABOUT.md +1 -1
- data/tracks/csharp/docs/RESOURCES.md +2 -2
- data/tracks/csharp/exercises/Exercises.All.sln +50 -8
- data/tracks/csharp/exercises/Exercises.Default.sln +50 -8
- data/tracks/csharp/exercises/collatz-conjecture/CollatzConjecture.cs +9 -0
- data/tracks/csharp/exercises/collatz-conjecture/CollatzConjecture.csproj +18 -0
- data/tracks/csharp/exercises/collatz-conjecture/CollatzConjectureTest.cs +43 -0
- data/tracks/csharp/exercises/collatz-conjecture/Example.cs +30 -0
- data/tracks/csharp/exercises/collatz-conjecture/README.md +38 -0
- data/tracks/csharp/exercises/diamond/Diamond.cs +1 -1
- data/tracks/csharp/exercises/diamond/Diamond.csproj +3 -1
- data/tracks/csharp/exercises/diamond/DiamondTest.cs +39 -21
- data/tracks/csharp/exercises/diamond/Example.cs +2 -2
- data/tracks/csharp/exercises/diamond/HINTS.md +3 -1
- data/tracks/csharp/exercises/spiral-matrix/Example.cs +40 -0
- data/tracks/csharp/exercises/spiral-matrix/README.md +36 -0
- data/tracks/csharp/exercises/spiral-matrix/SpiralMatrix.cs +9 -0
- data/tracks/csharp/exercises/spiral-matrix/SpiralMatrix.csproj +18 -0
- data/tracks/csharp/exercises/spiral-matrix/SpiralMatrixTest.cs +78 -0
- data/tracks/csharp/exercises/two-fer/Example.cs +16 -0
- data/tracks/csharp/exercises/two-fer/README.md +25 -0
- data/tracks/csharp/exercises/two-fer/TwoFer.cs +9 -0
- data/tracks/csharp/exercises/two-fer/TwoFer.csproj +18 -0
- data/tracks/csharp/exercises/two-fer/TwoFerTest.cs +24 -0
- data/tracks/dart/README.md +1 -1
- data/tracks/dart/docs/EXERCISE_README_INSERT.md +9 -0
- data/tracks/dart/docs/INSTALLATION.md +13 -0
- data/tracks/dart/docs/LEARNING.md +6 -0
- data/tracks/dart/docs/RESOURCES.md +7 -0
- data/tracks/dart/docs/TESTS.md +133 -0
- data/tracks/delphi/docs/ABOUT.md +18 -5
- data/tracks/delphi/docs/Getting_Started_Guide.md +930 -0
- data/tracks/delphi/exercises/hamming/uHammingExample.pas +1 -1
- data/tracks/delphi/exercises/hamming/uHammingTests.pas +15 -15
- data/tracks/ecmascript/.travis.yml +2 -1
- data/tracks/ecmascript/Makefile +19 -8
- data/tracks/ecmascript/config.json +16 -0
- data/tracks/ecmascript/exercises/accumulate/package.json +5 -5
- data/tracks/ecmascript/exercises/acronym/package.json +5 -5
- data/tracks/ecmascript/exercises/all-your-base/package.json +5 -5
- data/tracks/ecmascript/exercises/allergies/package.json +5 -5
- data/tracks/ecmascript/exercises/alphametics/package.json +5 -5
- data/tracks/ecmascript/exercises/anagram/package.json +5 -5
- data/tracks/ecmascript/exercises/atbash-cipher/package.json +5 -5
- data/tracks/ecmascript/exercises/beer-song/package.json +5 -5
- data/tracks/ecmascript/exercises/binary-search-tree/package.json +5 -5
- data/tracks/ecmascript/exercises/binary-search/package.json +5 -5
- data/tracks/ecmascript/exercises/binary/package.json +5 -5
- data/tracks/ecmascript/exercises/bob/package.json +5 -5
- data/tracks/ecmascript/exercises/bracket-push/package.json +5 -5
- data/tracks/ecmascript/exercises/circular-buffer/package.json +5 -5
- data/tracks/ecmascript/exercises/clock/package.json +5 -5
- data/tracks/ecmascript/exercises/connect/package.json +5 -5
- data/tracks/ecmascript/exercises/crypto-square/package.json +5 -5
- data/tracks/ecmascript/exercises/custom-set/package.json +5 -5
- data/tracks/ecmascript/exercises/diamond/package.json +5 -5
- data/tracks/ecmascript/exercises/difference-of-squares/package.json +5 -5
- data/tracks/ecmascript/exercises/diffie-hellman/package.json +5 -5
- data/tracks/ecmascript/exercises/etl/package.json +5 -5
- data/tracks/ecmascript/exercises/flatten-array/package.json +5 -5
- data/tracks/ecmascript/exercises/food-chain/package.json +5 -5
- data/tracks/ecmascript/exercises/gigasecond/package.json +5 -5
- data/tracks/ecmascript/exercises/grade-school/package.json +5 -5
- data/tracks/ecmascript/exercises/grains/package.json +5 -5
- data/tracks/ecmascript/exercises/hamming/package.json +5 -5
- data/tracks/ecmascript/exercises/hello-world/package.json +5 -5
- data/tracks/ecmascript/exercises/hexadecimal/package.json +5 -5
- data/tracks/ecmascript/exercises/isogram/package.json +5 -5
- data/tracks/ecmascript/exercises/kindergarten-garden/package.json +5 -5
- data/tracks/ecmascript/exercises/largest-series-product/package.json +5 -5
- data/tracks/ecmascript/exercises/leap/package.json +5 -5
- data/tracks/ecmascript/exercises/linked-list/package.json +5 -5
- data/tracks/ecmascript/exercises/list-ops/package.json +5 -5
- data/tracks/ecmascript/exercises/luhn/package.json +5 -5
- data/tracks/ecmascript/exercises/matrix/package.json +5 -5
- data/tracks/ecmascript/exercises/meetup/package.json +5 -5
- data/tracks/ecmascript/exercises/minesweeper/package.json +5 -5
- data/tracks/ecmascript/exercises/nth-prime/package.json +5 -5
- data/tracks/ecmascript/exercises/ocr-numbers/package.json +5 -5
- data/tracks/ecmascript/exercises/octal/package.json +5 -5
- data/tracks/ecmascript/exercises/palindrome-products/package.json +5 -5
- data/tracks/ecmascript/exercises/pangram/package.json +5 -5
- data/tracks/ecmascript/exercises/pascals-triangle/package.json +5 -5
- data/tracks/ecmascript/exercises/perfect-numbers/package.json +5 -5
- data/tracks/ecmascript/exercises/phone-number/package.json +5 -5
- data/tracks/ecmascript/exercises/pig-latin/package.json +5 -5
- data/tracks/ecmascript/exercises/prime-factors/package.json +5 -5
- data/tracks/ecmascript/exercises/pythagorean-triplet/package.json +5 -5
- data/tracks/ecmascript/exercises/queen-attack/package.json +5 -5
- data/tracks/ecmascript/exercises/raindrops/package.json +5 -5
- data/tracks/ecmascript/exercises/rna-transcription/package.json +5 -5
- data/tracks/ecmascript/exercises/robot-name/package.json +5 -5
- data/tracks/ecmascript/exercises/robot-simulator/package.json +5 -5
- data/tracks/ecmascript/exercises/roman-numerals/package.json +5 -5
- data/tracks/ecmascript/exercises/run-length-encoding/README.md +59 -0
- data/tracks/ecmascript/exercises/run-length-encoding/example.js +13 -0
- data/tracks/ecmascript/exercises/run-length-encoding/package.json +69 -0
- data/tracks/ecmascript/exercises/run-length-encoding/run-length-encoding.spec.js +59 -0
- data/tracks/ecmascript/exercises/saddle-points/package.json +5 -5
- data/tracks/ecmascript/exercises/say/package.json +5 -5
- data/tracks/ecmascript/exercises/scrabble-score/package.json +5 -5
- data/tracks/ecmascript/exercises/secret-handshake/package.json +5 -5
- data/tracks/ecmascript/exercises/series/package.json +5 -5
- data/tracks/ecmascript/exercises/sieve/package.json +5 -5
- data/tracks/ecmascript/exercises/simple-cipher/package.json +5 -5
- data/tracks/ecmascript/exercises/space-age/package.json +5 -5
- data/tracks/ecmascript/exercises/strain/package.json +5 -5
- data/tracks/ecmascript/exercises/sublist/package.json +5 -5
- data/tracks/ecmascript/exercises/sum-of-multiples/package.json +5 -5
- data/tracks/ecmascript/exercises/triangle/package.json +5 -5
- data/tracks/ecmascript/exercises/trinary/package.json +5 -5
- data/tracks/ecmascript/exercises/twelve-days/package.json +6 -5
- data/tracks/ecmascript/exercises/two-bucket/package.json +5 -5
- data/tracks/ecmascript/exercises/word-count/package.json +5 -5
- data/tracks/ecmascript/exercises/wordy/package.json +5 -5
- data/tracks/ecmascript/package.json +5 -5
- data/tracks/ecmascript/yarn.lock +403 -152
- data/tracks/elixir/docs/ABOUT.md +7 -20
- data/tracks/erlang/docs/ABOUT.md +4 -6
- data/tracks/fsharp/config.json +2 -1
- data/tracks/fsharp/docs/ABOUT.md +6 -2
- data/tracks/gnu-apl/.gitignore +4 -0
- data/tracks/gnu-apl/.travis.yml +5 -0
- data/tracks/gnu-apl/LICENSE +21 -0
- data/tracks/gnu-apl/README.md +67 -0
- data/tracks/gnu-apl/bin/fetch-configlet +32 -0
- data/tracks/gnu-apl/config.json +15 -0
- data/tracks/{scala/exercises/binary-search/src/main/scala/BinarySearch.scala → gnu-apl/config/exercise-readme-insert.md} +0 -0
- data/tracks/gnu-apl/config/exercise-readme.go.tmpl +16 -0
- data/tracks/gnu-apl/config/maintainers.json +6 -0
- data/tracks/gnu-apl/docs/ABOUT.md +0 -0
- data/tracks/gnu-apl/docs/INSTALLATION.md +0 -0
- data/tracks/gnu-apl/docs/LEARNING.md +0 -0
- data/tracks/gnu-apl/docs/RESOURCES.md +0 -0
- data/tracks/gnu-apl/docs/TESTS.md +0 -0
- data/tracks/gnu-apl/img/.keep +0 -0
- data/tracks/go/docs/ABOUT.md +4 -2
- data/tracks/go/exercises/pangram/example.go +1 -1
- data/tracks/go/exercises/pangram/pangram.go +1 -1
- data/tracks/go/exercises/pangram/pangram_test.go +1 -3
- data/tracks/groovy/README.md +2 -0
- data/tracks/groovy/config.json +25 -20
- data/tracks/groovy/docs/ABOUT.md +10 -3
- data/tracks/groovy/exercises/difference-of-squares/DifferenceOfSquares.groovy +19 -0
- data/tracks/groovy/exercises/difference-of-squares/{SquaresSpec.groovy → DifferenceOfSquaresSpec.groovy} +3 -3
- data/tracks/groovy/exercises/difference-of-squares/Example.groovy +1 -1
- data/tracks/groovy/exercises/hamming/Hamming.groovy +7 -0
- data/tracks/groovy/exercises/leap/Example.groovy +2 -2
- data/tracks/groovy/exercises/leap/Leap.groovy +11 -0
- data/tracks/groovy/exercises/leap/LeapSpec.groovy +4 -4
- data/tracks/groovy/exercises/nth-prime/Example.groovy +1 -1
- data/tracks/groovy/exercises/nth-prime/NthPrime.groovy +7 -0
- data/tracks/groovy/exercises/nth-prime/{PrimeSpec.groovy → NthPrimeSpec.groovy} +6 -6
- data/tracks/groovy/exercises/phone-number/PhoneNumber.groovy +17 -0
- data/tracks/groovy/exercises/raindrops/Raindrops.groovy +7 -0
- data/tracks/groovy/exercises/rna-transcription/Example.groovy +1 -1
- data/tracks/groovy/exercises/rna-transcription/RnaTranscription.groovy +7 -0
- data/tracks/groovy/exercises/rna-transcription/{ComplementSpec.groovy → RnaTranscriptionSpec.groovy} +2 -2
- data/tracks/groovy/exercises/robot-name/Example.groovy +2 -2
- data/tracks/groovy/exercises/robot-name/RobotName.groovy +9 -0
- data/tracks/groovy/exercises/robot-name/{RobotSpec.groovy → RobotNameSpec.groovy} +6 -6
- data/tracks/groovy/exercises/roman-numerals/Example.groovy +2 -2
- data/tracks/groovy/exercises/roman-numerals/RomanNumerals.groovy +7 -0
- data/tracks/groovy/exercises/roman-numerals/{RomanSpec.groovy → RomanNumeralsSpec.groovy} +2 -2
- data/tracks/groovy/exercises/word-count/Example.groovy +2 -2
- data/tracks/groovy/exercises/word-count/{Phrase.groovy → WordCount.groovy} +2 -2
- data/tracks/groovy/exercises/word-count/WordCountSpec.groovy +47 -0
- data/tracks/java/config.json +84 -74
- data/tracks/java/docs/ABOUT.md +11 -5
- data/tracks/java/exercises/house/README.md +124 -0
- data/tracks/java/exercises/house/build.gradle +18 -0
- data/tracks/java/exercises/house/src/example/java/House.java +55 -0
- data/tracks/java/exercises/house/src/main/java/.keep +0 -0
- data/tracks/java/exercises/house/src/test/java/HouseTest.java +341 -0
- data/tracks/java/exercises/minesweeper/src/example/java/MinesweeperBoard.java +3 -3
- data/tracks/java/exercises/series/src/test/java/SeriesTest.java +6 -5
- data/tracks/java/exercises/settings.gradle +1 -0
- data/tracks/java/exercises/two-fer/src/test/java/TwoferTest.java +9 -0
- data/tracks/javascript/exercises/circular-buffer/circular-buffer.spec.js +8 -0
- data/tracks/javascript/exercises/simple-cipher/README.md +1 -1
- data/tracks/kotlin/docs/ABOUT.md +7 -10
- data/tracks/lisp/.travis.yml +26 -11
- data/tracks/purescript/docs/ABOUT.md +16 -0
- data/tracks/r/config.json +1 -1
- data/tracks/r/config/maintainers.json +9 -9
- data/tracks/r/docs/ABOUT.md +9 -11
- data/tracks/r/docs/snippet.txt +10 -0
- data/tracks/ruby/docs/ABOUT.md +5 -5
- data/tracks/ruby/exercises/collatz-conjecture/.meta/generator/collatz_conjecture_case.rb +1 -2
- data/tracks/ruby/exercises/space-age/.meta/generator/space_age_case.rb +1 -2
- data/tracks/ruby/exercises/sum-of-multiples/.meta/generator/sum_of_multiples_case.rb +1 -1
- data/tracks/ruby/lib/generator/exercise_case.rb +15 -0
- data/tracks/scala/exercises/alphametics/src/test/scala/AlphameticsTest.scala +42 -28
- data/tracks/scala/exercises/binary-search/example.scala +1 -1
- data/tracks/scala/exercises/binary-search/src/main/scala/.keep +0 -0
- data/tracks/scala/exercises/binary-search/src/test/scala/BinarySearchTest.scala +13 -22
- data/tracks/scala/exercises/bowling/src/main/scala/.keep +0 -0
- data/tracks/scala/exercises/bowling/src/test/scala/BowlingSuite.scala +30 -17
- data/tracks/scala/exercises/change/src/test/scala/ChangeTest.scala +14 -4
- data/tracks/scala/exercises/custom-set/src/test/scala/CustomSetTest.scala +6 -4
- data/tracks/scala/exercises/food-chain/example.scala +4 -2
- data/tracks/scala/exercises/food-chain/src/test/scala/FoodChainTest.scala +170 -59
- data/tracks/scala/exercises/luhn/example.scala +9 -21
- data/tracks/scala/exercises/luhn/src/test/scala/LuhnTest.scala +46 -10
- data/tracks/scala/testgen/src/main/scala/AlphametricsTestGenerator.scala +42 -0
- data/tracks/scala/testgen/src/main/scala/BinarySearchTestGenerator.scala +32 -42
- data/tracks/scala/testgen/src/main/scala/BowlingTestGenerator.scala +22 -7
- data/tracks/scala/testgen/src/main/scala/ChangeTestGenerator.scala +37 -0
- data/tracks/scala/testgen/src/main/scala/CustomSetTestGenerator.scala +25 -20
- data/tracks/scala/testgen/src/main/scala/FoodChainTestGenerator.scala +13 -2
- data/tracks/scala/testgen/src/main/scala/LuhnTestGenerator.scala +15 -0
- data/tracks/scala/testgen/src/main/scala/TestBuilder.scala +10 -0
- data/tracks/sml/.travis.yml +9 -2
- data/tracks/sml/Makefile +42 -0
- data/tracks/sml/docs/EXERCISE_README_INSERT.md +21 -5
- data/tracks/sml/docs/RESOURCES.md +1 -1
- data/tracks/sml/docs/TESTS.md +2 -2
- metadata +67 -17
- data/tracks/bash/exercises/word-count/README.md +0 -24
- data/tracks/bash/exercises/word-count/example.awk +0 -12
- data/tracks/bash/exercises/word-count/example.sh +0 -21
- data/tracks/dart/.github/PULL_REQUEST_TEMPLATE.md +0 -23
- data/tracks/ecmascript/.babelrc +0 -3
- data/tracks/groovy/exercises/roman-numerals/Roman.groovy +0 -33
- data/tracks/groovy/exercises/word-count/PhraseSpec.groovy +0 -47
- data/tracks/scala/exercises/bowling/src/main/scala/Bowling.scala +0 -11
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 643c800ff499662b7d1b27b73254935090d5ef8f
|
|
4
|
+
data.tar.gz: 3a8a383cb166273a7fda7b0bcd2d54a51a2cfe84
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 0b2738e867cb7248a54e07e83dc85d7b8df3dcefae27008200b94b690981818cc63ff66a94a2d424443af8e4102d0dbd995c4c4f10a327efb1e8d1f0a44702dd
|
|
7
|
+
data.tar.gz: 120adbf3d5a0b0ccf504fa10f2786b5dfad66c97381cbe61b5b596ee4b033626d193f77d3f8317fb086a8124b57f55a7b4c83a8a49738f60dbfa10f0be5c9df2
|
data/.gitmodules
CHANGED
data/lib/trackler/version.rb
CHANGED
|
@@ -317,7 +317,7 @@ scenarios in this guide.
|
|
|
317
317
|
|
|
318
318
|
### Pull Request Guidelines
|
|
319
319
|
|
|
320
|
-
See the [pull request guidelines](https://github.com/exercism/docs/blob/master/contributing
|
|
320
|
+
See the [pull request guidelines](https://github.com/exercism/docs/blob/master/contributing/pull-request-guidelines.md) in the docs repository.
|
|
321
321
|
|
|
322
322
|
### Exercise Versioning
|
|
323
323
|
|
|
@@ -22,6 +22,3 @@ Check out the test suite to see the expected function signature.
|
|
|
22
22
|
Keep your hands off that collect/map/fmap/whatchamacallit functionality
|
|
23
23
|
provided by your standard library!
|
|
24
24
|
Solve this one yourself using other basic tools instead.
|
|
25
|
-
|
|
26
|
-
Lisp specific: it's perfectly fine to use `MAPCAR` or the equivalent,
|
|
27
|
-
as this is idiomatic Lisp, not a library function.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"exercise": "hamming",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "2.0.0",
|
|
4
4
|
"comments": [
|
|
5
5
|
"Language implementations vary on the issue of unequal length strands.",
|
|
6
6
|
"A language may elect to simplify this task by only presenting equal",
|
|
@@ -110,14 +110,14 @@
|
|
|
110
110
|
"property": "distance",
|
|
111
111
|
"strand1": "AATG",
|
|
112
112
|
"strand2": "AAA",
|
|
113
|
-
"expected":
|
|
113
|
+
"expected": {"error": "left and right strands must be of equal length"}
|
|
114
114
|
},
|
|
115
115
|
{
|
|
116
116
|
"description": "disallow second strand longer",
|
|
117
117
|
"property": "distance",
|
|
118
118
|
"strand1": "ATA",
|
|
119
119
|
"strand2": "AGTG",
|
|
120
|
-
"expected":
|
|
120
|
+
"expected": {"error": "left and right strands must be of equal length"}
|
|
121
121
|
}
|
|
122
122
|
]
|
|
123
123
|
}
|
|
@@ -0,0 +1,322 @@
|
|
|
1
|
+
{
|
|
2
|
+
"exercise": "house",
|
|
3
|
+
"version": "1.0.0",
|
|
4
|
+
"comments": [
|
|
5
|
+
"JSON doesn't allow for multi-line strings, so all verses are presented ",
|
|
6
|
+
"here as arrays of strings. It's up to the test generator to join the ",
|
|
7
|
+
"lines together with line breaks.",
|
|
8
|
+
"Some languages test for the verse() method, which takes a start verse ",
|
|
9
|
+
"and optional end verse, but other languages have only tested for the full poem.",
|
|
10
|
+
"For those languages in the latter category, you may wish to only ",
|
|
11
|
+
"implement the full song test and leave the rest alone, ignoring the start verse, ",
|
|
12
|
+
"end verse, and verse fields."
|
|
13
|
+
],
|
|
14
|
+
"cases": [
|
|
15
|
+
{
|
|
16
|
+
"description": "Return specified verse or series of verses",
|
|
17
|
+
"cases": [
|
|
18
|
+
{
|
|
19
|
+
"description": "verse one - the house that jack built",
|
|
20
|
+
"property": "verse",
|
|
21
|
+
"verse": 1,
|
|
22
|
+
"expected": [
|
|
23
|
+
"This is the house that Jack built."
|
|
24
|
+
]
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
"description": "verse two - the malt that lay",
|
|
28
|
+
"property": "verse",
|
|
29
|
+
"verse": 2,
|
|
30
|
+
"expected": [
|
|
31
|
+
"This is the malt",
|
|
32
|
+
"that lay in the house that Jack built."
|
|
33
|
+
]
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
"description": "verse three - the rat that ate",
|
|
37
|
+
"property": "verse",
|
|
38
|
+
"verse": 3,
|
|
39
|
+
"expected": [
|
|
40
|
+
"This is the rat",
|
|
41
|
+
"that ate the malt",
|
|
42
|
+
"that lay in the house that Jack built."
|
|
43
|
+
]
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
"description": "verse four - the cat that killed",
|
|
47
|
+
"property": "verse",
|
|
48
|
+
"verse": 4,
|
|
49
|
+
"expected": [
|
|
50
|
+
"This is the cat",
|
|
51
|
+
"that killed the rat",
|
|
52
|
+
"that ate the malt",
|
|
53
|
+
"that lay in the house that Jack built."
|
|
54
|
+
]
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
"description": "verse five - the dog that worried",
|
|
58
|
+
"property": "verse",
|
|
59
|
+
"verse": 5,
|
|
60
|
+
"expected": [
|
|
61
|
+
"This is the dog",
|
|
62
|
+
"that worried the cat",
|
|
63
|
+
"that killed the rat",
|
|
64
|
+
"that ate the malt",
|
|
65
|
+
"that lay in the house that Jack built."
|
|
66
|
+
]
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
"description": "verse six - the cow with the crumpled horn",
|
|
70
|
+
"property": "verse",
|
|
71
|
+
"verse": 6,
|
|
72
|
+
"expected": [
|
|
73
|
+
"This is the cow with the crumpled horn",
|
|
74
|
+
"that tossed the dog",
|
|
75
|
+
"that worried the cat",
|
|
76
|
+
"that killed the rat",
|
|
77
|
+
"that ate the malt",
|
|
78
|
+
"that lay in the house that Jack built."
|
|
79
|
+
]
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
"description": "verse seven - the maiden all forlorn",
|
|
83
|
+
"property": "verse",
|
|
84
|
+
"verse": 7,
|
|
85
|
+
"expected": [
|
|
86
|
+
"This is the maiden all forlorn",
|
|
87
|
+
"that milked the cow with the crumpled horn",
|
|
88
|
+
"that tossed the dog",
|
|
89
|
+
"that worried the cat",
|
|
90
|
+
"that killed the rat",
|
|
91
|
+
"that ate the malt",
|
|
92
|
+
"that lay in the house that Jack built."
|
|
93
|
+
]
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
"description": "verse eight - the man all tattered and torn",
|
|
97
|
+
"property": "verse",
|
|
98
|
+
"verse": 8,
|
|
99
|
+
"expected": [
|
|
100
|
+
"This is the man all tattered and torn",
|
|
101
|
+
"that kissed the maiden all forlorn",
|
|
102
|
+
"that milked the cow with the crumpled horn",
|
|
103
|
+
"that tossed the dog",
|
|
104
|
+
"that worried the cat",
|
|
105
|
+
"that killed the rat",
|
|
106
|
+
"that ate the malt",
|
|
107
|
+
"that lay in the house that Jack built."
|
|
108
|
+
]
|
|
109
|
+
},
|
|
110
|
+
{
|
|
111
|
+
"description": "verse nine - the priest all shaven and shorn",
|
|
112
|
+
"property": "verse",
|
|
113
|
+
"verse": 9,
|
|
114
|
+
"expected": [
|
|
115
|
+
"This is the priest all shaven and shorn",
|
|
116
|
+
"that married the man all tattered and torn",
|
|
117
|
+
"that kissed the maiden all forlorn",
|
|
118
|
+
"that milked the cow with the crumpled horn",
|
|
119
|
+
"that tossed the dog",
|
|
120
|
+
"that worried the cat",
|
|
121
|
+
"that killed the rat",
|
|
122
|
+
"that ate the malt",
|
|
123
|
+
"that lay in the house that Jack built."
|
|
124
|
+
]
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
"description": "verse 10 - the rooster that crowed in the morn",
|
|
128
|
+
"property": "verse",
|
|
129
|
+
"verse": 10,
|
|
130
|
+
"expected": [
|
|
131
|
+
"This is the rooster that crowed in the morn",
|
|
132
|
+
"that woke the priest all shaven and shorn",
|
|
133
|
+
"that married the man all tattered and torn",
|
|
134
|
+
"that kissed the maiden all forlorn",
|
|
135
|
+
"that milked the cow with the crumpled horn",
|
|
136
|
+
"that tossed the dog",
|
|
137
|
+
"that worried the cat",
|
|
138
|
+
"that killed the rat",
|
|
139
|
+
"that ate the malt",
|
|
140
|
+
"that lay in the house that Jack built."
|
|
141
|
+
]
|
|
142
|
+
},
|
|
143
|
+
{
|
|
144
|
+
"description": "verse 11 - the farmer sowing his corn",
|
|
145
|
+
"property": "verse",
|
|
146
|
+
"verse": 11,
|
|
147
|
+
"expected": [
|
|
148
|
+
"This is the farmer sowing his corn",
|
|
149
|
+
"that kept the rooster that crowed in the morn",
|
|
150
|
+
"that woke the priest all shaven and shorn",
|
|
151
|
+
"that married the man all tattered and torn",
|
|
152
|
+
"that kissed the maiden all forlorn",
|
|
153
|
+
"that milked the cow with the crumpled horn",
|
|
154
|
+
"that tossed the dog",
|
|
155
|
+
"that worried the cat",
|
|
156
|
+
"that killed the rat",
|
|
157
|
+
"that ate the malt",
|
|
158
|
+
"that lay in the house that Jack built."
|
|
159
|
+
]
|
|
160
|
+
},
|
|
161
|
+
{
|
|
162
|
+
"description": "verse 12 - the horse and the hound and the horn",
|
|
163
|
+
"property": "verse",
|
|
164
|
+
"verse": 12,
|
|
165
|
+
"expected": [
|
|
166
|
+
"This is the horse and the hound and the horn",
|
|
167
|
+
"that belonged to the farmer sowing his corn",
|
|
168
|
+
"that kept the rooster that crowed in the morn",
|
|
169
|
+
"that woke the priest all shaven and shorn",
|
|
170
|
+
"that married the man all tattered and torn",
|
|
171
|
+
"that kissed the maiden all forlorn",
|
|
172
|
+
"that milked the cow with the crumpled horn",
|
|
173
|
+
"that tossed the dog",
|
|
174
|
+
"that worried the cat",
|
|
175
|
+
"that killed the rat",
|
|
176
|
+
"that ate the malt",
|
|
177
|
+
"that lay in the house that Jack built."
|
|
178
|
+
]
|
|
179
|
+
},
|
|
180
|
+
{
|
|
181
|
+
"description": "multiple verses",
|
|
182
|
+
"property": "verses",
|
|
183
|
+
"start verse": 4,
|
|
184
|
+
"end verse": 8,
|
|
185
|
+
"expected": [
|
|
186
|
+
"This is the cat",
|
|
187
|
+
"that killed the rat",
|
|
188
|
+
"that ate the malt",
|
|
189
|
+
"that lay in the house that Jack built.",
|
|
190
|
+
"",
|
|
191
|
+
"This is the dog",
|
|
192
|
+
"that worried the cat",
|
|
193
|
+
"that killed the rat",
|
|
194
|
+
"that ate the malt",
|
|
195
|
+
"that lay in the house that Jack built.",
|
|
196
|
+
"",
|
|
197
|
+
"This is the cow with the crumpled horn",
|
|
198
|
+
"that tossed the dog",
|
|
199
|
+
"that worried the cat",
|
|
200
|
+
"that killed the rat",
|
|
201
|
+
"that ate the malt",
|
|
202
|
+
"that lay in the house that Jack built.",
|
|
203
|
+
"",
|
|
204
|
+
"This is the maiden all forlorn",
|
|
205
|
+
"that milked the cow with the crumpled horn",
|
|
206
|
+
"that tossed the dog",
|
|
207
|
+
"that worried the cat",
|
|
208
|
+
"that killed the rat",
|
|
209
|
+
"that ate the malt",
|
|
210
|
+
"that lay in the house that Jack built.",
|
|
211
|
+
"",
|
|
212
|
+
"This is the man all tattered and torn",
|
|
213
|
+
"that kissed the maiden all forlorn",
|
|
214
|
+
"that milked the cow with the crumpled horn",
|
|
215
|
+
"that tossed the dog",
|
|
216
|
+
"that worried the cat",
|
|
217
|
+
"that killed the rat",
|
|
218
|
+
"that ate the malt",
|
|
219
|
+
"that lay in the house that Jack built."
|
|
220
|
+
]
|
|
221
|
+
},
|
|
222
|
+
{
|
|
223
|
+
"description": "full rhyme",
|
|
224
|
+
"property": "verses",
|
|
225
|
+
"start verse": 1,
|
|
226
|
+
"end verse": 12,
|
|
227
|
+
"expected": [
|
|
228
|
+
"This is the house that Jack built.",
|
|
229
|
+
"",
|
|
230
|
+
"This is the malt",
|
|
231
|
+
"that lay in the house that Jack built.",
|
|
232
|
+
"",
|
|
233
|
+
"This is the rat",
|
|
234
|
+
"that ate the malt",
|
|
235
|
+
"that lay in the house that Jack built.",
|
|
236
|
+
"",
|
|
237
|
+
"This is the cat",
|
|
238
|
+
"that killed the rat",
|
|
239
|
+
"that ate the malt",
|
|
240
|
+
"that lay in the house that Jack built.",
|
|
241
|
+
"",
|
|
242
|
+
"This is the dog",
|
|
243
|
+
"that worried the cat",
|
|
244
|
+
"that killed the rat",
|
|
245
|
+
"that ate the malt",
|
|
246
|
+
"that lay in the house that Jack built.",
|
|
247
|
+
"",
|
|
248
|
+
"This is the cow with the crumpled horn",
|
|
249
|
+
"that tossed the dog",
|
|
250
|
+
"that worried the cat",
|
|
251
|
+
"that killed the rat",
|
|
252
|
+
"that ate the malt",
|
|
253
|
+
"that lay in the house that Jack built.",
|
|
254
|
+
"",
|
|
255
|
+
"This is the maiden all forlorn",
|
|
256
|
+
"that milked the cow with the crumpled horn",
|
|
257
|
+
"that tossed the dog",
|
|
258
|
+
"that worried the cat",
|
|
259
|
+
"that killed the rat",
|
|
260
|
+
"that ate the malt",
|
|
261
|
+
"that lay in the house that Jack built.",
|
|
262
|
+
"",
|
|
263
|
+
"This is the man all tattered and torn",
|
|
264
|
+
"that kissed the maiden all forlorn",
|
|
265
|
+
"that milked the cow with the crumpled horn",
|
|
266
|
+
"that tossed the dog",
|
|
267
|
+
"that worried the cat",
|
|
268
|
+
"that killed the rat",
|
|
269
|
+
"that ate the malt",
|
|
270
|
+
"that lay in the house that Jack built.",
|
|
271
|
+
"",
|
|
272
|
+
"This is the priest all shaven and shorn",
|
|
273
|
+
"that married the man all tattered and torn",
|
|
274
|
+
"that kissed the maiden all forlorn",
|
|
275
|
+
"that milked the cow with the crumpled horn",
|
|
276
|
+
"that tossed the dog",
|
|
277
|
+
"that worried the cat",
|
|
278
|
+
"that killed the rat",
|
|
279
|
+
"that ate the malt",
|
|
280
|
+
"that lay in the house that Jack built.",
|
|
281
|
+
"",
|
|
282
|
+
"This is the rooster that crowed in the morn",
|
|
283
|
+
"that woke the priest all shaven and shorn",
|
|
284
|
+
"that married the man all tattered and torn",
|
|
285
|
+
"that kissed the maiden all forlorn",
|
|
286
|
+
"that milked the cow with the crumpled horn",
|
|
287
|
+
"that tossed the dog",
|
|
288
|
+
"that worried the cat",
|
|
289
|
+
"that killed the rat",
|
|
290
|
+
"that ate the malt",
|
|
291
|
+
"that lay in the house that Jack built.",
|
|
292
|
+
"",
|
|
293
|
+
"This is the farmer sowing his corn",
|
|
294
|
+
"that kept the rooster that crowed in the morn",
|
|
295
|
+
"that woke the priest all shaven and shorn",
|
|
296
|
+
"that married the man all tattered and torn",
|
|
297
|
+
"that kissed the maiden all forlorn",
|
|
298
|
+
"that milked the cow with the crumpled horn",
|
|
299
|
+
"that tossed the dog",
|
|
300
|
+
"that worried the cat",
|
|
301
|
+
"that killed the rat",
|
|
302
|
+
"that ate the malt",
|
|
303
|
+
"that lay in the house that Jack built.",
|
|
304
|
+
"",
|
|
305
|
+
"This is the horse and the hound and the horn",
|
|
306
|
+
"that belonged to the farmer sowing his corn",
|
|
307
|
+
"that kept the rooster that crowed in the morn",
|
|
308
|
+
"that woke the priest all shaven and shorn",
|
|
309
|
+
"that married the man all tattered and torn",
|
|
310
|
+
"that kissed the maiden all forlorn",
|
|
311
|
+
"that milked the cow with the crumpled horn",
|
|
312
|
+
"that tossed the dog",
|
|
313
|
+
"that worried the cat",
|
|
314
|
+
"that killed the rat",
|
|
315
|
+
"that ate the malt",
|
|
316
|
+
"that lay in the house that Jack built."
|
|
317
|
+
]
|
|
318
|
+
}
|
|
319
|
+
]
|
|
320
|
+
}
|
|
321
|
+
]
|
|
322
|
+
}
|
|
@@ -12,7 +12,7 @@ product: `91 * 99 = 9009`.
|
|
|
12
12
|
|
|
13
13
|
It's possible (and indeed common) for a palindrome product to be the product
|
|
14
14
|
of multiple combinations of numbers. For example, the palindrome product `9` has
|
|
15
|
-
the factors `(1, 9)
|
|
15
|
+
the factors `(1, 9)` and `(3, 3)`.
|
|
16
16
|
|
|
17
17
|
Write a program that given a range of integers, returns the smallest and largest
|
|
18
18
|
palindromic product of factors within that range, along with all the factors in the range for that product.
|
|
@@ -22,7 +22,7 @@ palindromic product of factors within that range, along with all the factors in
|
|
|
22
22
|
Given the range `[1, 9]` (both inclusive)...
|
|
23
23
|
|
|
24
24
|
The smallest product is `1`. Its factors are `(1, 1)`.
|
|
25
|
-
The largest product is `9`. Its factors are `(1, 9)`, `(3, 3)
|
|
25
|
+
The largest product is `9`. Its factors are `(1, 9)`, and `(3, 3)`.
|
|
26
26
|
|
|
27
27
|
## Example 2
|
|
28
28
|
|
|
@@ -45,7 +45,7 @@ Given the key "aaaaaaaaaaaaaaaaaa", encoding the string "iamapandabear"
|
|
|
45
45
|
would return the original "iamapandabear".
|
|
46
46
|
|
|
47
47
|
Given the key "ddddddddddddddddd", encoding our string "iamapandabear"
|
|
48
|
-
would return the obscured "
|
|
48
|
+
would return the obscured "ldpdsdqgdehdu"
|
|
49
49
|
|
|
50
50
|
In the example above, we've set a = 0 for the key value. So when the
|
|
51
51
|
plaintext is added to the key, we end up with the same message coming
|
data/tracks/bash/config.json
CHANGED
|
@@ -109,17 +109,6 @@
|
|
|
109
109
|
"associative_arrays"
|
|
110
110
|
]
|
|
111
111
|
},
|
|
112
|
-
{
|
|
113
|
-
"uuid": "51bd6542-408b-4a73-8343-1c4d50db5315",
|
|
114
|
-
"slug": "word-count",
|
|
115
|
-
"core": false,
|
|
116
|
-
"unlocked_by": "pangram",
|
|
117
|
-
"difficulty": 2,
|
|
118
|
-
"topics": [
|
|
119
|
-
"control_flow_loops",
|
|
120
|
-
"string_comparison"
|
|
121
|
-
]
|
|
122
|
-
},
|
|
123
112
|
{
|
|
124
113
|
"uuid": "0cfac255-6871-4588-a16b-98f7692bfdbe",
|
|
125
114
|
"slug": "two-fer",
|