trackler 2.2.0.2 → 2.2.0.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/fixtures/deprecation-fixtures/tracks/repo-nope/config.json +2 -0
- data/fixtures/deprecation-fixtures/tracks/repo-yepp/config.json +3 -0
- data/lib/trackler/track.rb +1 -1
- data/lib/trackler/version.rb +1 -1
- data/tracks/csharp/config/exercise_readme.go.tmpl +16 -0
- data/tracks/csharp/exercises/accumulate/README.md +44 -0
- data/tracks/csharp/exercises/acronym/README.md +21 -0
- data/tracks/csharp/exercises/all-your-base/README.md +41 -0
- data/tracks/csharp/exercises/allergies/README.md +46 -0
- data/tracks/csharp/exercises/alphametics/README.md +48 -0
- data/tracks/csharp/exercises/anagram/README.md +19 -0
- data/tracks/csharp/exercises/atbash-cipher/README.md +40 -0
- data/tracks/csharp/exercises/bank-account/README.md +41 -0
- data/tracks/csharp/exercises/beer-song/README.md +336 -0
- data/tracks/csharp/exercises/binary-search-tree/README.md +66 -0
- data/tracks/csharp/exercises/binary-search/README.md +47 -0
- data/tracks/csharp/exercises/bob/README.md +24 -0
- data/tracks/csharp/exercises/book-store/README.md +80 -0
- data/tracks/csharp/exercises/bowling/README.md +59 -0
- data/tracks/csharp/exercises/bracket-push/README.md +16 -0
- data/tracks/csharp/exercises/change/README.md +29 -0
- data/tracks/csharp/exercises/circular-buffer/README.md +56 -0
- data/tracks/csharp/exercises/clock/README.md +25 -0
- data/tracks/csharp/exercises/connect/README.md +40 -0
- data/tracks/csharp/exercises/crypto-square/README.md +80 -0
- data/tracks/csharp/exercises/custom-set/README.md +23 -0
- data/tracks/csharp/exercises/diamond/README.md +75 -0
- data/tracks/csharp/exercises/difference-of-squares/README.md +30 -0
- data/tracks/csharp/exercises/diffie-hellman/README.md +55 -0
- data/tracks/csharp/exercises/dominoes/README.md +24 -0
- data/tracks/csharp/exercises/dot-dsl/README.md +37 -0
- data/tracks/csharp/exercises/error-handling/README.md +19 -0
- data/tracks/csharp/exercises/etl/README.md +57 -0
- data/tracks/csharp/exercises/flatten-array/README.md +24 -0
- data/tracks/csharp/exercises/food-chain/README.md +80 -0
- data/tracks/csharp/exercises/forth/README.md +39 -0
- data/tracks/csharp/exercises/gigasecond/README.md +17 -0
- data/tracks/csharp/exercises/go-counting/README.md +43 -0
- data/tracks/csharp/exercises/grade-school/README.md +48 -0
- data/tracks/csharp/exercises/grains/README.md +40 -0
- data/tracks/csharp/exercises/grep/README.md +77 -0
- data/tracks/csharp/exercises/hamming/README.md +48 -0
- data/tracks/csharp/exercises/hangman/README.md +32 -0
- data/tracks/csharp/exercises/hello-world/README.md +27 -0
- data/tracks/csharp/exercises/house/README.md +123 -0
- data/tracks/csharp/exercises/isogram/README.md +25 -0
- data/tracks/csharp/exercises/kindergarten-garden/README.md +72 -0
- data/tracks/csharp/exercises/largest-series-product/README.md +26 -0
- data/tracks/csharp/exercises/leap/README.md +39 -0
- data/tracks/csharp/exercises/ledger/README.md +24 -0
- data/tracks/csharp/exercises/linked-list/README.md +40 -0
- data/tracks/csharp/exercises/list-ops/README.md +19 -0
- data/tracks/csharp/exercises/luhn/README.md +77 -0
- data/tracks/csharp/exercises/markdown/README.md +28 -0
- data/tracks/csharp/exercises/matrix/README.md +51 -0
- data/tracks/csharp/exercises/meetup/README.md +36 -0
- data/tracks/csharp/exercises/minesweeper/README.md +36 -0
- data/tracks/csharp/exercises/nth-prime/README.md +29 -0
- data/tracks/csharp/exercises/nucleotide-count/README.md +43 -0
- data/tracks/csharp/exercises/ocr-numbers/README.md +91 -0
- data/tracks/csharp/exercises/palindrome-products/README.md +51 -0
- data/tracks/csharp/exercises/pangram/README.md +21 -0
- data/tracks/csharp/exercises/parallel-letter-frequency/README.md +17 -0
- data/tracks/csharp/exercises/pascals-triangle/README.md +27 -0
- data/tracks/csharp/exercises/perfect-numbers/README.md +30 -0
- data/tracks/csharp/exercises/phone-number/README.md +40 -0
- data/tracks/csharp/exercises/pig-latin/README.md +30 -0
- data/tracks/csharp/exercises/poker/README.md +18 -0
- data/tracks/csharp/exercises/pov/README.md +52 -0
- data/tracks/csharp/exercises/prime-factors/README.md +42 -0
- data/tracks/csharp/exercises/protein-translation/README.md +55 -0
- data/tracks/csharp/exercises/proverb/README.md +28 -0
- data/tracks/csharp/exercises/pythagorean-triplet/README.md +30 -0
- data/tracks/csharp/exercises/queen-attack/README.md +39 -0
- data/tracks/csharp/exercises/rail-fence-cipher/README.md +66 -0
- data/tracks/csharp/exercises/raindrops/README.md +30 -0
- data/tracks/csharp/exercises/react/README.md +29 -0
- data/tracks/csharp/exercises/rectangles/README.md +73 -0
- data/tracks/csharp/exercises/rna-transcription/README.md +31 -0
- data/tracks/csharp/exercises/robot-name/README.md +28 -0
- data/tracks/csharp/exercises/robot-simulator/README.md +40 -0
- data/tracks/csharp/exercises/roman-numerals/README.md +59 -0
- data/tracks/csharp/exercises/rotational-cipher/README.md +42 -0
- data/tracks/csharp/exercises/run-length-encoding/README.md +36 -0
- data/tracks/csharp/exercises/saddle-points/README.md +44 -0
- data/tracks/csharp/exercises/say/README.md +75 -0
- data/tracks/csharp/exercises/scale-generator/README.md +66 -0
- data/tracks/csharp/exercises/scrabble-score/README.md +50 -0
- data/tracks/csharp/exercises/secret-handshake/README.md +41 -0
- data/tracks/csharp/exercises/series/README.md +33 -0
- data/tracks/csharp/exercises/sgf-parsing/README.md +78 -0
- data/tracks/csharp/exercises/sieve/README.md +40 -0
- data/tracks/csharp/exercises/simple-cipher/README.md +96 -0
- data/tracks/csharp/exercises/simple-linked-list/README.md +38 -0
- data/tracks/csharp/exercises/space-age/README.md +30 -0
- data/tracks/csharp/exercises/strain/README.md +46 -0
- data/tracks/csharp/exercises/sublist/README.md +32 -0
- data/tracks/csharp/exercises/sum-of-multiples/README.md +28 -0
- data/tracks/csharp/exercises/tournament/README.md +74 -0
- data/tracks/csharp/exercises/transpose/README.md +71 -0
- data/tracks/csharp/exercises/tree-building/README.md +36 -0
- data/tracks/csharp/exercises/triangle/README.md +32 -0
- data/tracks/csharp/exercises/twelve-days/README.md +45 -0
- data/tracks/csharp/exercises/two-bucket/README.md +42 -0
- data/tracks/csharp/exercises/variable-length-quantity/README.md +50 -0
- data/tracks/csharp/exercises/word-count/README.md +25 -0
- data/tracks/csharp/exercises/word-search/README.md +43 -0
- data/tracks/csharp/exercises/wordy/README.md +73 -0
- data/tracks/csharp/exercises/zebra-puzzle/README.md +43 -0
- data/tracks/csharp/exercises/zipper/README.md +41 -0
- data/tracks/dart/config/exercise_readme.go.tmpl +16 -0
- data/tracks/dart/exercises/bob/README.md +18 -0
- data/tracks/dart/exercises/difference-of-squares/README.md +19 -0
- data/tracks/dart/exercises/gigasecond/README.md +11 -0
- data/tracks/dart/exercises/hamming/README.md +42 -0
- data/tracks/dart/exercises/hello-world/README.md +21 -0
- data/tracks/dart/exercises/leap/README.md +33 -0
- data/tracks/dart/exercises/rna-transcription/README.md +25 -0
- data/tracks/delphi/config.json +25 -32
- data/tracks/elixir/config.json +255 -3
- data/tracks/elixir/config/exercise_readme.go.tmpl +16 -0
- data/tracks/elixir/exercises/accumulate/README.md +72 -0
- data/tracks/elixir/exercises/acronym/README.md +52 -0
- data/tracks/elixir/exercises/all-your-base/README.md +72 -0
- data/tracks/elixir/exercises/allergies/README.md +74 -0
- data/tracks/elixir/exercises/anagram/README.md +50 -0
- data/tracks/elixir/exercises/atbash-cipher/README.md +71 -0
- data/tracks/elixir/exercises/bank-account/README.md +67 -0
- data/tracks/elixir/exercises/beer-song/README.md +364 -0
- data/tracks/elixir/exercises/binary-search/README.md +78 -0
- data/tracks/elixir/exercises/binary/README.md +72 -0
- data/tracks/elixir/exercises/bob/README.md +55 -0
- data/tracks/elixir/exercises/bowling/README.md +90 -0
- data/tracks/elixir/exercises/bowling/bowling_test.exs +91 -18
- data/tracks/elixir/exercises/bowling/example.exs +4 -4
- data/tracks/elixir/exercises/bracket-push/README.md +47 -0
- data/tracks/elixir/exercises/change/README.md +60 -0
- data/tracks/elixir/exercises/clock/README.md +50 -0
- data/tracks/elixir/exercises/collatz-conjecture/README.md +70 -0
- data/tracks/elixir/exercises/connect/README.md +71 -0
- data/tracks/elixir/exercises/crypto-square/README.md +111 -0
- data/tracks/elixir/exercises/custom-set/README.md +48 -0
- data/tracks/elixir/exercises/diamond/README.md +96 -0
- data/tracks/elixir/exercises/difference-of-squares/README.md +56 -0
- data/tracks/elixir/exercises/diffie-hellman/README.md +93 -0
- data/tracks/elixir/exercises/dominoes/README.md +55 -0
- data/tracks/elixir/exercises/dot-dsl/README.md +65 -0
- data/tracks/elixir/exercises/etl/README.md +88 -0
- data/tracks/elixir/exercises/flatten-array/README.md +55 -0
- data/tracks/elixir/exercises/forth/README.md +66 -0
- data/tracks/elixir/exercises/gigasecond/README.md +48 -0
- data/tracks/elixir/exercises/grade-school/README.md +79 -0
- data/tracks/elixir/exercises/grains/README.md +71 -0
- data/tracks/elixir/exercises/grep/README.md +108 -0
- data/tracks/elixir/exercises/hamming/README.md +79 -0
- data/tracks/elixir/exercises/hello-world/README.md +58 -0
- data/tracks/elixir/exercises/hexadecimal/README.md +51 -0
- data/tracks/elixir/exercises/isogram/README.md +56 -0
- data/tracks/elixir/exercises/kindergarten-garden/README.md +103 -0
- data/tracks/elixir/exercises/largest-series-product/README.md +57 -0
- data/tracks/elixir/exercises/leap/README.md +70 -0
- data/tracks/elixir/exercises/list-ops/README.md +47 -0
- data/tracks/elixir/exercises/luhn/README.md +108 -0
- data/tracks/elixir/exercises/markdown/README.md +55 -0
- data/tracks/elixir/exercises/matrix/README.md +82 -0
- data/tracks/elixir/exercises/meetup/README.md +67 -0
- data/tracks/elixir/exercises/minesweeper/README.md +67 -0
- data/tracks/elixir/exercises/nth-prime/README.md +52 -0
- data/tracks/elixir/exercises/nucleotide-count/README.md +70 -0
- data/tracks/elixir/exercises/ocr-numbers/README.md +122 -0
- data/tracks/elixir/exercises/palindrome-products/README.md +77 -0
- data/tracks/elixir/exercises/pangram/README.md +52 -0
- data/tracks/elixir/exercises/parallel-letter-frequency/README.md +48 -0
- data/tracks/elixir/exercises/pascals-triangle/README.md +58 -0
- data/tracks/elixir/exercises/perfect-numbers/README.md +61 -0
- data/tracks/elixir/exercises/phone-number/README.md +71 -0
- data/tracks/elixir/exercises/pig-latin/README.md +61 -0
- data/tracks/elixir/exercises/poker/README.md +49 -0
- data/tracks/elixir/exercises/prime-factors/README.md +73 -0
- data/tracks/elixir/exercises/protein-translation/README.md +86 -0
- data/tracks/elixir/exercises/pythagorean-triplet/README.md +61 -0
- data/tracks/elixir/exercises/queen-attack/README.md +70 -0
- data/tracks/elixir/exercises/rail-fence-cipher/README.md +97 -0
- data/tracks/elixir/exercises/raindrops/README.md +61 -0
- data/tracks/elixir/exercises/rna-transcription/README.md +62 -0
- data/tracks/elixir/exercises/robot-simulator/README.md +71 -0
- data/tracks/elixir/exercises/roman-numerals/README.md +86 -0
- data/tracks/elixir/exercises/rotational-cipher/README.md +73 -0
- data/tracks/elixir/exercises/run-length-encoding/README.md +67 -0
- data/tracks/elixir/exercises/saddle-points/README.md +70 -0
- data/tracks/elixir/exercises/say/README.md +106 -0
- data/tracks/elixir/exercises/scale-generator/README.md +97 -0
- data/tracks/elixir/exercises/scrabble-score/README.md +81 -0
- data/tracks/elixir/exercises/secret-handshake/README.md +94 -0
- data/tracks/elixir/exercises/series/README.md +64 -0
- data/tracks/elixir/exercises/sieve/README.md +71 -0
- data/tracks/elixir/exercises/simple-cipher/README.md +127 -0
- data/tracks/elixir/exercises/simple-linked-list/README.md +65 -0
- data/tracks/elixir/exercises/space-age/README.md +61 -0
- data/tracks/elixir/exercises/strain/README.md +80 -0
- data/tracks/elixir/exercises/sublist/README.md +58 -0
- data/tracks/elixir/exercises/sum-of-multiples/README.md +55 -0
- data/tracks/elixir/exercises/tournament/README.md +110 -0
- data/tracks/elixir/exercises/triangle/README.md +63 -0
- data/tracks/elixir/exercises/twelve-days/README.md +72 -0
- data/tracks/elixir/exercises/word-count/README.md +56 -0
- data/tracks/elixir/exercises/wordy/README.md +100 -0
- data/tracks/elixir/exercises/zipper/README.md +68 -0
- data/tracks/fsharp/config/exercise_readme.go.tmpl +16 -0
- data/tracks/fsharp/exercises/accumulate/README.md +40 -0
- data/tracks/fsharp/exercises/acronym/README.md +15 -0
- data/tracks/fsharp/exercises/all-your-base/README.md +35 -0
- data/tracks/fsharp/exercises/allergies/README.md +37 -0
- data/tracks/fsharp/exercises/alphametics/README.md +41 -0
- data/tracks/fsharp/exercises/anagram/README.md +13 -0
- data/tracks/fsharp/exercises/atbash-cipher/README.md +34 -0
- data/tracks/fsharp/exercises/bank-account/README.md +30 -0
- data/tracks/fsharp/exercises/beer-song/README.md +331 -0
- data/tracks/fsharp/exercises/binary-search-tree/README.md +60 -0
- data/tracks/fsharp/exercises/binary-search/README.md +41 -0
- data/tracks/fsharp/exercises/bob/README.md +18 -0
- data/tracks/fsharp/exercises/book-store/README.md +74 -0
- data/tracks/fsharp/exercises/bowling/README.md +53 -0
- data/tracks/fsharp/exercises/bracket-push/README.md +10 -0
- data/tracks/fsharp/exercises/change/README.md +23 -0
- data/tracks/fsharp/exercises/circular-buffer/README.md +50 -0
- data/tracks/fsharp/exercises/clock/README.md +13 -0
- data/tracks/fsharp/exercises/connect/README.md +34 -0
- data/tracks/fsharp/exercises/crypto-square/README.md +74 -0
- data/tracks/fsharp/exercises/custom-set/README.md +11 -0
- data/tracks/fsharp/exercises/diamond/README.md +62 -0
- data/tracks/fsharp/exercises/difference-of-squares/README.md +25 -0
- data/tracks/fsharp/exercises/diffie-hellman/README.md +49 -0
- data/tracks/fsharp/exercises/dominoes/README.md +18 -0
- data/tracks/fsharp/exercises/dot-dsl/README.md +28 -0
- data/tracks/fsharp/exercises/error-handling/README.md +13 -0
- data/tracks/fsharp/exercises/etl/README.md +51 -0
- data/tracks/fsharp/exercises/food-chain/README.md +74 -0
- data/tracks/fsharp/exercises/forth/README.md +29 -0
- data/tracks/fsharp/exercises/gigasecond/README.md +15 -0
- data/tracks/fsharp/exercises/go-counting/README.md +37 -0
- data/tracks/fsharp/exercises/grade-school/README.md +47 -0
- data/tracks/fsharp/exercises/grains/README.md +39 -0
- data/tracks/fsharp/exercises/grep/README.md +71 -0
- data/tracks/fsharp/exercises/hamming/README.md +42 -0
- data/tracks/fsharp/exercises/hangman/README.md +21 -0
- data/tracks/fsharp/exercises/hello-world/README.md +21 -0
- data/tracks/fsharp/exercises/house/README.md +117 -0
- data/tracks/fsharp/exercises/isogram/README.md +19 -0
- data/tracks/fsharp/exercises/kindergarten-garden/README.md +66 -0
- data/tracks/fsharp/exercises/largest-series-product/README.md +20 -0
- data/tracks/fsharp/exercises/leap/README.md +33 -0
- data/tracks/fsharp/exercises/ledger/README.md +18 -0
- data/tracks/fsharp/exercises/lens-person/README.md +15 -0
- data/tracks/fsharp/exercises/linked-list/README.md +50 -0
- data/tracks/fsharp/exercises/list-ops/README.md +10 -0
- data/tracks/fsharp/exercises/luhn/README.md +71 -0
- data/tracks/fsharp/exercises/markdown/README.md +18 -0
- data/tracks/fsharp/exercises/matrix/README.md +45 -0
- data/tracks/fsharp/exercises/meetup/README.md +30 -0
- data/tracks/fsharp/exercises/minesweeper/README.md +30 -0
- data/tracks/fsharp/exercises/nth-prime/README.md +21 -0
- data/tracks/fsharp/exercises/nucleotide-count/README.md +33 -0
- data/tracks/fsharp/exercises/ocr-numbers/README.md +85 -0
- data/tracks/fsharp/exercises/palindrome-products/README.md +44 -0
- data/tracks/fsharp/exercises/pangram/README.md +15 -0
- data/tracks/fsharp/exercises/parallel-letter-frequency/README.md +15 -0
- data/tracks/fsharp/exercises/pascals-triangle/README.md +21 -0
- data/tracks/fsharp/exercises/perfect-numbers/README.md +24 -0
- data/tracks/fsharp/exercises/phone-number/README.md +34 -0
- data/tracks/fsharp/exercises/pig-latin/README.md +24 -0
- data/tracks/fsharp/exercises/poker/README.md +15 -0
- data/tracks/fsharp/exercises/pov/README.md +46 -0
- data/tracks/fsharp/exercises/prime-factors/README.md +36 -0
- data/tracks/fsharp/exercises/protein-translation/README.md +49 -0
- data/tracks/fsharp/exercises/proverb/README.md +22 -0
- data/tracks/fsharp/exercises/pythagorean-triplet/README.md +24 -0
- data/tracks/fsharp/exercises/queen-attack/README.md +33 -0
- data/tracks/fsharp/exercises/rail-fence-cipher/README.md +60 -0
- data/tracks/fsharp/exercises/raindrops/README.md +27 -0
- data/tracks/fsharp/exercises/react/README.md +19 -0
- data/tracks/fsharp/exercises/rectangles/README.md +67 -0
- data/tracks/fsharp/exercises/rna-transcription/README.md +29 -0
- data/tracks/fsharp/exercises/robot-name/README.md +22 -0
- data/tracks/fsharp/exercises/robot-simulator/README.md +34 -0
- data/tracks/fsharp/exercises/roman-numerals/README.md +49 -0
- data/tracks/fsharp/exercises/run-length-encoding/README.md +30 -0
- data/tracks/fsharp/exercises/saddle-points/README.md +33 -0
- data/tracks/fsharp/exercises/say/README.md +69 -0
- data/tracks/fsharp/exercises/scale-generator/README.md +60 -0
- data/tracks/fsharp/exercises/scrabble-score/README.md +44 -0
- data/tracks/fsharp/exercises/secret-handshake/README.md +35 -0
- data/tracks/fsharp/exercises/series/README.md +27 -0
- data/tracks/fsharp/exercises/sgf-parsing/README.md +68 -0
- data/tracks/fsharp/exercises/sieve/README.md +34 -0
- data/tracks/fsharp/exercises/simple-cipher/README.md +90 -0
- data/tracks/fsharp/exercises/simple-linked-list/README.md +28 -0
- data/tracks/fsharp/exercises/space-age/README.md +28 -0
- data/tracks/fsharp/exercises/strain/README.md +40 -0
- data/tracks/fsharp/exercises/sublist/README.md +21 -0
- data/tracks/fsharp/exercises/sum-of-multiples/README.md +18 -0
- data/tracks/fsharp/exercises/tournament/README.md +68 -0
- data/tracks/fsharp/exercises/transpose/README.md +65 -0
- data/tracks/fsharp/exercises/tree-building/README.md +30 -0
- data/tracks/fsharp/exercises/triangle/README.md +26 -0
- data/tracks/fsharp/exercises/twelve-days/README.md +39 -0
- data/tracks/fsharp/exercises/two-bucket/README.md +36 -0
- data/tracks/fsharp/exercises/variable-length-quantity/README.md +39 -0
- data/tracks/fsharp/exercises/word-count/README.md +19 -0
- data/tracks/fsharp/exercises/word-search/README.md +30 -0
- data/tracks/fsharp/exercises/wordy/README.md +68 -0
- data/tracks/fsharp/exercises/zebra-puzzle/README.md +32 -0
- data/tracks/fsharp/exercises/zipper/README.md +31 -0
- data/tracks/haskell/README.md +2 -2
- data/tracks/javascript/config.json +232 -4
- data/tracks/kotlin/config.json +8 -1
- data/tracks/kotlin/exercises/rotational-cipher/build.gradle +28 -0
- data/tracks/kotlin/exercises/rotational-cipher/src/example/kotlin/RotationalCipher.kt +18 -0
- data/tracks/kotlin/exercises/rotational-cipher/src/main/kotlin/.keep +0 -0
- data/tracks/kotlin/exercises/rotational-cipher/src/test/kotlin/RotationalCipherTest.kt +81 -0
- data/tracks/kotlin/exercises/settings.gradle +1 -0
- data/tracks/powershell/config/exercise_readme.go.tmpl +16 -0
- data/tracks/powershell/exercises/hamming/README.md +42 -0
- data/tracks/powershell/exercises/hello-world/README.md +21 -0
- data/tracks/purescript/README.md +4 -4
- data/tracks/scala/config.json +266 -6
- data/tracks/scala/config/exercise_readme.go.tmpl +16 -0
- data/tracks/scala/exercises/accumulate/README.md +46 -0
- data/tracks/scala/exercises/acronym/README.md +26 -0
- data/tracks/scala/exercises/all-your-base/README.md +46 -0
- data/tracks/scala/exercises/allergies/README.md +48 -0
- data/tracks/scala/exercises/alphametics/README.md +46 -0
- data/tracks/scala/exercises/anagram/README.md +24 -0
- data/tracks/scala/exercises/atbash-cipher/README.md +45 -0
- data/tracks/scala/exercises/bank-account/README.md +54 -0
- data/tracks/scala/exercises/beer-song/README.md +338 -0
- data/tracks/scala/exercises/binary-search-tree/README.md +71 -0
- data/tracks/scala/exercises/binary-search/README.md +52 -0
- data/tracks/scala/exercises/binary/README.md +46 -0
- data/tracks/scala/exercises/bob/README.md +29 -0
- data/tracks/scala/exercises/book-store/README.md +85 -0
- data/tracks/scala/exercises/bowling/README.md +64 -0
- data/tracks/scala/exercises/bracket-push/README.md +21 -0
- data/tracks/scala/exercises/change/README.md +34 -0
- data/tracks/scala/exercises/clock/README.md +24 -0
- data/tracks/scala/exercises/connect/README.md +53 -0
- data/tracks/scala/exercises/crypto-square/README.md +85 -0
- data/tracks/scala/exercises/custom-set/README.md +22 -0
- data/tracks/scala/exercises/difference-of-squares/README.md +30 -0
- data/tracks/scala/exercises/dominoes/README.md +29 -0
- data/tracks/scala/exercises/etl/README.md +62 -0
- data/tracks/scala/exercises/food-chain/README.md +81 -0
- data/tracks/scala/exercises/forth/README.md +40 -0
- data/tracks/scala/exercises/gigasecond/README.md +26 -0
- data/tracks/scala/exercises/grade-school/README.md +53 -0
- data/tracks/scala/exercises/grains/README.md +45 -0
- data/tracks/scala/exercises/hamming/README.md +112 -0
- data/tracks/scala/exercises/hello-world/README.md +38 -0
- data/tracks/scala/exercises/hexadecimal/README.md +25 -0
- data/tracks/scala/exercises/house/README.md +124 -0
- data/tracks/scala/exercises/isogram/README.md +30 -0
- data/tracks/scala/exercises/kindergarten-garden/README.md +77 -0
- data/tracks/scala/exercises/largest-series-product/README.md +31 -0
- data/tracks/scala/exercises/leap/README.md +50 -0
- data/tracks/scala/exercises/lens-person/README.md +11 -7
- data/tracks/scala/exercises/linked-list/README.md +45 -0
- data/tracks/scala/exercises/luhn/README.md +82 -0
- data/tracks/scala/exercises/matrix/README.md +56 -0
- data/tracks/scala/exercises/meetup/README.md +41 -0
- data/tracks/scala/exercises/minesweeper/README.md +41 -0
- data/tracks/scala/exercises/nth-prime/README.md +26 -0
- data/tracks/scala/exercises/nucleotide-count/README.md +107 -0
- data/tracks/scala/exercises/ocr-numbers/README.md +96 -0
- data/tracks/scala/exercises/octal/README.md +60 -0
- data/tracks/scala/exercises/palindrome-products/README.md +51 -0
- data/tracks/scala/exercises/pangram/README.md +26 -0
- data/tracks/scala/exercises/parallel-letter-frequency/README.md +50 -0
- data/tracks/scala/exercises/pascals-triangle/README.md +32 -0
- data/tracks/scala/exercises/perfect-numbers/README.md +35 -0
- data/tracks/scala/exercises/phone-number/README.md +56 -0
- data/tracks/scala/exercises/pig-latin/README.md +35 -0
- data/tracks/scala/exercises/prime-factors/README.md +47 -0
- data/tracks/scala/exercises/protein-translation/README.md +60 -0
- data/tracks/scala/exercises/pythagorean-triplet/README.md +35 -0
- data/tracks/scala/exercises/queen-attack/README.md +44 -0
- data/tracks/scala/exercises/rail-fence-cipher/README.md +71 -0
- data/tracks/scala/exercises/raindrops/README.md +35 -0
- data/tracks/scala/exercises/rna-transcription/README.md +36 -0
- data/tracks/scala/exercises/robot-name/README.md +40 -0
- data/tracks/scala/exercises/robot-simulator/README.md +45 -0
- data/tracks/scala/exercises/roman-numerals/README.md +72 -0
- data/tracks/scala/exercises/run-length-encoding/README.md +41 -0
- data/tracks/scala/exercises/saddle-points/README.md +44 -0
- data/tracks/scala/exercises/say/README.md +80 -0
- data/tracks/scala/exercises/scrabble-score/README.md +55 -0
- data/tracks/scala/exercises/secret-handshake/README.md +46 -0
- data/tracks/scala/exercises/series/README.md +38 -0
- data/tracks/scala/exercises/sgf-parsing/README.md +79 -0
- data/tracks/scala/exercises/sieve/README.md +45 -0
- data/tracks/scala/exercises/simple-cipher/README.md +101 -0
- data/tracks/scala/exercises/simple-linked-list/README.md +39 -0
- data/tracks/scala/exercises/space-age/README.md +35 -0
- data/tracks/scala/exercises/spiral-matrix/README.md +41 -0
- data/tracks/scala/exercises/strain/README.md +51 -0
- data/tracks/scala/exercises/sublist/README.md +32 -0
- data/tracks/scala/exercises/sum-of-multiples/README.md +29 -0
- data/tracks/scala/exercises/triangle/README.md +37 -0
- data/tracks/scala/exercises/trinary/README.md +39 -0
- data/tracks/scala/exercises/variable-length-quantity/README.md +54 -0
- data/tracks/scala/exercises/word-count/README.md +30 -0
- data/tracks/scala/exercises/wordy/README.md +74 -0
- data/tracks/scala/exercises/zebra-puzzle/README.md +43 -0
- data/tracks/scala/exercises/zipper/README.md +42 -0
- metadata +401 -1
data/tracks/kotlin/config.json
CHANGED
@@ -148,6 +148,13 @@
|
|
148
148
|
|
149
149
|
]
|
150
150
|
},
|
151
|
+
{
|
152
|
+
"difficulty": 4,
|
153
|
+
"slug": "atbash-cipher",
|
154
|
+
"topics": [
|
155
|
+
|
156
|
+
]
|
157
|
+
},
|
151
158
|
{
|
152
159
|
"difficulty": 4,
|
153
160
|
"slug": "nth-prime",
|
@@ -269,7 +276,7 @@
|
|
269
276
|
},
|
270
277
|
{
|
271
278
|
"difficulty": 5,
|
272
|
-
"slug": "
|
279
|
+
"slug": "rotational-cipher",
|
273
280
|
"topics": [
|
274
281
|
|
275
282
|
]
|
@@ -0,0 +1,28 @@
|
|
1
|
+
buildscript {
|
2
|
+
ext.kotlin_version = '1.1.1'
|
3
|
+
repositories {
|
4
|
+
mavenCentral()
|
5
|
+
}
|
6
|
+
dependencies {
|
7
|
+
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
|
8
|
+
}
|
9
|
+
}
|
10
|
+
|
11
|
+
apply plugin: 'kotlin'
|
12
|
+
|
13
|
+
repositories {
|
14
|
+
mavenCentral()
|
15
|
+
}
|
16
|
+
|
17
|
+
dependencies {
|
18
|
+
compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
|
19
|
+
|
20
|
+
testCompile 'junit:junit:4.12'
|
21
|
+
testCompile "org.jetbrains.kotlin:kotlin-test-junit:$kotlin_version"
|
22
|
+
}
|
23
|
+
test {
|
24
|
+
testLogging {
|
25
|
+
exceptionFormat = 'full'
|
26
|
+
events = ["passed", "failed", "skipped"]
|
27
|
+
}
|
28
|
+
}
|
@@ -0,0 +1,18 @@
|
|
1
|
+
class RotationalCipher(val shiftKey: Int) {
|
2
|
+
|
3
|
+
companion object {
|
4
|
+
private val LOWERS = ('a'..'z').toList()
|
5
|
+
private val UPPERS = ('A'..'Z').toList()
|
6
|
+
}
|
7
|
+
|
8
|
+
fun encode(text: String): String {
|
9
|
+
return text.map { char ->
|
10
|
+
when (char) {
|
11
|
+
in LOWERS -> LOWERS[(LOWERS.indexOf(char) + shiftKey) % LOWERS.size]
|
12
|
+
in UPPERS -> UPPERS[(UPPERS.indexOf(char) + shiftKey) % UPPERS.size]
|
13
|
+
else -> char
|
14
|
+
}
|
15
|
+
}.joinToString("")
|
16
|
+
}
|
17
|
+
|
18
|
+
}
|
File without changes
|
@@ -0,0 +1,81 @@
|
|
1
|
+
import org.junit.Ignore
|
2
|
+
import org.junit.Test
|
3
|
+
import kotlin.test.assertEquals
|
4
|
+
|
5
|
+
/*
|
6
|
+
* version: 1.0.0
|
7
|
+
*/
|
8
|
+
class RotationalCipherTest {
|
9
|
+
|
10
|
+
@Test
|
11
|
+
fun testRotateLowercaseABy1NoWrapAround() {
|
12
|
+
val cipher = RotationalCipher(1)
|
13
|
+
assertEquals("b", cipher.encode("a"))
|
14
|
+
}
|
15
|
+
|
16
|
+
@Ignore
|
17
|
+
@Test
|
18
|
+
fun testRotateLowercaseABy26SingleWrapAround() {
|
19
|
+
val cipher = RotationalCipher(26)
|
20
|
+
assertEquals("a", cipher.encode("a"))
|
21
|
+
}
|
22
|
+
|
23
|
+
@Ignore
|
24
|
+
@Test
|
25
|
+
fun testRotateLowercaseABy0() {
|
26
|
+
val cipher = RotationalCipher(0)
|
27
|
+
assertEquals("a", cipher.encode("a"))
|
28
|
+
}
|
29
|
+
|
30
|
+
@Ignore
|
31
|
+
@Test
|
32
|
+
fun testRotateLowercaseMBy13NoWrapAround() {
|
33
|
+
val cipher = RotationalCipher(13)
|
34
|
+
assertEquals("z", cipher.encode("m"))
|
35
|
+
}
|
36
|
+
|
37
|
+
@Ignore
|
38
|
+
@Test
|
39
|
+
fun testRotateLowercaseNBy1SingleWrapAround() {
|
40
|
+
val cipher = RotationalCipher(13)
|
41
|
+
assertEquals("a", cipher.encode("n"))
|
42
|
+
}
|
43
|
+
|
44
|
+
@Ignore
|
45
|
+
@Test
|
46
|
+
fun testRotateCapitalLettersNoWrapAround() {
|
47
|
+
val cipher = RotationalCipher(5)
|
48
|
+
assertEquals("TRL", cipher.encode("OMG"))
|
49
|
+
}
|
50
|
+
|
51
|
+
@Ignore
|
52
|
+
@Test
|
53
|
+
fun testSpacesAreUnalteredByRotation() {
|
54
|
+
val cipher = RotationalCipher(5)
|
55
|
+
assertEquals("T R L", cipher.encode("O M G"))
|
56
|
+
}
|
57
|
+
|
58
|
+
@Ignore
|
59
|
+
@Test
|
60
|
+
fun testNumbersAreUnalteredByRotation() {
|
61
|
+
val cipher = RotationalCipher(4)
|
62
|
+
assertEquals("Xiwxmrk 1 2 3 xiwxmrk", cipher.encode("Testing 1 2 3 testing"))
|
63
|
+
}
|
64
|
+
|
65
|
+
@Ignore
|
66
|
+
@Test
|
67
|
+
fun testPunctuationIsUnalteredByRotation() {
|
68
|
+
val cipher = RotationalCipher(21)
|
69
|
+
assertEquals("Gzo'n zvo, Bmviyhv!", cipher.encode("Let's eat, Grandma!"))
|
70
|
+
}
|
71
|
+
|
72
|
+
@Ignore
|
73
|
+
@Test
|
74
|
+
fun testAllLettersRotateCorrectly() {
|
75
|
+
val cipher = RotationalCipher(13)
|
76
|
+
assertEquals(
|
77
|
+
"Gur dhvpx oebja sbk whzcf bire gur ynml qbt.",
|
78
|
+
cipher.encode("The quick brown fox jumps over the lazy dog."))
|
79
|
+
}
|
80
|
+
|
81
|
+
}
|
@@ -0,0 +1,16 @@
|
|
1
|
+
# {{ .Spec.Name }}
|
2
|
+
|
3
|
+
{{ .Spec.Description -}}
|
4
|
+
{{- with .Hints }}
|
5
|
+
{{ . }}
|
6
|
+
{{ end }}
|
7
|
+
{{- with .TrackInsert }}
|
8
|
+
{{ . }}
|
9
|
+
{{ end }}
|
10
|
+
{{- with .Spec.Credits -}}
|
11
|
+
## Source
|
12
|
+
|
13
|
+
{{ . }}
|
14
|
+
{{ end }}
|
15
|
+
## Submitting Incomplete Solutions
|
16
|
+
It's possible to submit an incomplete solution so you can see how others have completed the exercise.
|
@@ -0,0 +1,42 @@
|
|
1
|
+
# Hamming
|
2
|
+
|
3
|
+
Calculate the Hamming difference between two DNA strands.
|
4
|
+
|
5
|
+
A mutation is simply a mistake that occurs during the creation or
|
6
|
+
copying of a nucleic acid, in particular DNA. Because nucleic acids are
|
7
|
+
vital to cellular functions, mutations tend to cause a ripple effect
|
8
|
+
throughout the cell. Although mutations are technically mistakes, a very
|
9
|
+
rare mutation may equip the cell with a beneficial attribute. In fact,
|
10
|
+
the macro effects of evolution are attributable by the accumulated
|
11
|
+
result of beneficial microscopic mutations over many generations.
|
12
|
+
|
13
|
+
The simplest and most common type of nucleic acid mutation is a point
|
14
|
+
mutation, which replaces one base with another at a single nucleotide.
|
15
|
+
|
16
|
+
By counting the number of differences between two homologous DNA strands
|
17
|
+
taken from different genomes with a common ancestor, we get a measure of
|
18
|
+
the minimum number of point mutations that could have occurred on the
|
19
|
+
evolutionary path between the two strands.
|
20
|
+
|
21
|
+
This is called the 'Hamming distance'.
|
22
|
+
|
23
|
+
It is found by comparing two DNA strands and counting how many of the
|
24
|
+
nucleotides are different from their equivalent in the other string.
|
25
|
+
|
26
|
+
GAGCCTACTAACGGGAT
|
27
|
+
CATCGTAATGACGGCCT
|
28
|
+
^ ^ ^ ^ ^ ^^
|
29
|
+
|
30
|
+
The Hamming distance between these two DNA strands is 7.
|
31
|
+
|
32
|
+
# Implementation notes
|
33
|
+
|
34
|
+
The Hamming distance is only defined for sequences of equal length. This means
|
35
|
+
that based on the definition, each language could deal with getting sequences
|
36
|
+
of equal length differently.
|
37
|
+
## Source
|
38
|
+
|
39
|
+
The Calculating Point Mutations problem at Rosalind [http://rosalind.info/problems/hamm/](http://rosalind.info/problems/hamm/)
|
40
|
+
|
41
|
+
## Submitting Incomplete Solutions
|
42
|
+
It's possible to submit an incomplete solution so you can see how others have completed the exercise.
|
@@ -0,0 +1,21 @@
|
|
1
|
+
# Hello World
|
2
|
+
|
3
|
+
The classical introductory exercise. Just say "Hello, World!".
|
4
|
+
|
5
|
+
["Hello, World!"](http://en.wikipedia.org/wiki/%22Hello,_world!%22_program) is
|
6
|
+
the traditional first program for beginning programming in a new language
|
7
|
+
or environment.
|
8
|
+
|
9
|
+
The objectives are simple:
|
10
|
+
|
11
|
+
- Write a function that returns the string "Hello, World!".
|
12
|
+
- Run the test suite and make sure that it succeeds.
|
13
|
+
- Submit your solution and check it at the website.
|
14
|
+
|
15
|
+
If everything goes well, you will be ready to fetch your first real exercise.
|
16
|
+
## Source
|
17
|
+
|
18
|
+
This is an exercise to introduce users to using Exercism [http://en.wikipedia.org/wiki/%22Hello,_world!%22_program](http://en.wikipedia.org/wiki/%22Hello,_world!%22_program)
|
19
|
+
|
20
|
+
## Submitting Incomplete Solutions
|
21
|
+
It's possible to submit an incomplete solution so you can see how others have completed the exercise.
|
data/tracks/purescript/README.md
CHANGED
@@ -27,7 +27,7 @@ don't be afraid or shy! We promise to be friendly and as helpful as possible.
|
|
27
27
|
|
28
28
|
As a first step we recommend you read the [contributing guide][cont-guide].
|
29
29
|
|
30
|
-
[cont-guide]: https://github.com/exercism/
|
30
|
+
[cont-guide]: https://github.com/exercism/docs/blob/master/contributing-to-language-tracks/README.md
|
31
31
|
|
32
32
|
#### Reporting or fixing bugs
|
33
33
|
|
@@ -59,18 +59,18 @@ totally new exercise, but it might be a good idea to first discuss it in one
|
|
59
59
|
of [our forums](#asking-for-help).
|
60
60
|
|
61
61
|
[missing]: http://exercism.io/languages/purescript/todo
|
62
|
-
[porting]: https://github.com/exercism/
|
62
|
+
[porting]: https://github.com/exercism/docs/blob/master/contributing-to-language-tracks/README.md#porting-an-exercise-to-another-language-track
|
63
63
|
|
64
64
|
|
65
65
|
### Repository structure and conventions
|
66
66
|
|
67
|
-
[Here](https://github.com/exercism/
|
67
|
+
[Here](https://github.com/exercism/docs/blob/master/contributing-to-language-tracks/README.md#track-anatomy)
|
68
68
|
is a general description of all the files and directories that are not
|
69
69
|
explicitly described below.
|
70
70
|
|
71
71
|
|
72
72
|
### Writing a pull request
|
73
|
-
To fix a bug you should [create a pull request from a fork](https://help.github.com/articles/creating-a-pull-request-from-a-fork/) [here](https://github.com/exercism/purescript/pull). See also [here](https://github.com/exercism/
|
73
|
+
To fix a bug you should [create a pull request from a fork](https://help.github.com/articles/creating-a-pull-request-from-a-fork/) [here](https://github.com/exercism/purescript/pull). See also [here](https://github.com/exercism/docs/blob/master/contributing-to-language-tracks/README.md#git-basics) for more information.
|
74
74
|
|
75
75
|
|
76
76
|
|
data/tracks/scala/config.json
CHANGED
@@ -5,14 +5,20 @@
|
|
5
5
|
"active": true,
|
6
6
|
"exercises": [
|
7
7
|
{
|
8
|
+
"uuid": "1fadd9c3-a7c9-4355-aef9-82e0df3d45b9",
|
8
9
|
"slug": "hello-world",
|
10
|
+
"core": false,
|
11
|
+
"unlocked_by": null,
|
9
12
|
"difficulty": 1,
|
10
13
|
"topics": [
|
11
14
|
"Strings"
|
12
15
|
]
|
13
16
|
},
|
14
17
|
{
|
18
|
+
"uuid": "57b76aba-a485-464d-84ba-e9a445b25be6",
|
15
19
|
"slug": "bob",
|
20
|
+
"core": false,
|
21
|
+
"unlocked_by": null,
|
16
22
|
"difficulty": 1,
|
17
23
|
"topics": [
|
18
24
|
"Strings",
|
@@ -21,7 +27,10 @@
|
|
21
27
|
]
|
22
28
|
},
|
23
29
|
{
|
30
|
+
"uuid": "7221946d-6321-4cec-8e64-050abae3ccd7",
|
24
31
|
"slug": "sum-of-multiples",
|
32
|
+
"core": false,
|
33
|
+
"unlocked_by": null,
|
25
34
|
"difficulty": 1,
|
26
35
|
"topics": [
|
27
36
|
"Filtering",
|
@@ -29,7 +38,10 @@
|
|
29
38
|
]
|
30
39
|
},
|
31
40
|
{
|
41
|
+
"uuid": "b600cda0-f5b8-45b3-bfd0-7e0c19a0b073",
|
32
42
|
"slug": "leap",
|
43
|
+
"core": false,
|
44
|
+
"unlocked_by": null,
|
33
45
|
"difficulty": 1,
|
34
46
|
"topics": [
|
35
47
|
"Integers",
|
@@ -37,7 +49,10 @@
|
|
37
49
|
]
|
38
50
|
},
|
39
51
|
{
|
52
|
+
"uuid": "f147966d-97ec-4479-8679-8cad942b499a",
|
40
53
|
"slug": "space-age",
|
54
|
+
"core": false,
|
55
|
+
"unlocked_by": null,
|
41
56
|
"difficulty": 1,
|
42
57
|
"topics": [
|
43
58
|
"Dates",
|
@@ -46,7 +61,10 @@
|
|
46
61
|
]
|
47
62
|
},
|
48
63
|
{
|
64
|
+
"uuid": "4c3710dc-fac2-4056-b4ac-945b67c08068",
|
49
65
|
"slug": "gigasecond",
|
66
|
+
"core": false,
|
67
|
+
"unlocked_by": null,
|
50
68
|
"difficulty": 1,
|
51
69
|
"topics": [
|
52
70
|
"Dates",
|
@@ -55,7 +73,10 @@
|
|
55
73
|
]
|
56
74
|
},
|
57
75
|
{
|
76
|
+
"uuid": "1fe9f43a-7774-4fbd-864b-eff7749ebbc6",
|
58
77
|
"slug": "difference-of-squares",
|
78
|
+
"core": false,
|
79
|
+
"unlocked_by": null,
|
59
80
|
"difficulty": 1,
|
60
81
|
"topics": [
|
61
82
|
"Integers",
|
@@ -63,14 +84,20 @@
|
|
63
84
|
]
|
64
85
|
},
|
65
86
|
{
|
87
|
+
"uuid": "e6f96ae1-6736-42f4-b74d-14a4aa8aa5fc",
|
66
88
|
"slug": "pangram",
|
89
|
+
"core": false,
|
90
|
+
"unlocked_by": null,
|
67
91
|
"difficulty": 2,
|
68
92
|
"topics": [
|
69
93
|
"Strings"
|
70
94
|
]
|
71
95
|
},
|
72
96
|
{
|
97
|
+
"uuid": "b469a197-adf4-4d02-b129-07f993104054",
|
73
98
|
"slug": "grade-school",
|
99
|
+
"core": false,
|
100
|
+
"unlocked_by": null,
|
74
101
|
"difficulty": 2,
|
75
102
|
"topics": [
|
76
103
|
"Maps",
|
@@ -79,7 +106,10 @@
|
|
79
106
|
]
|
80
107
|
},
|
81
108
|
{
|
109
|
+
"uuid": "6d136d51-390a-46a7-b42b-fdecff7b622a",
|
82
110
|
"slug": "accumulate",
|
111
|
+
"core": false,
|
112
|
+
"unlocked_by": null,
|
83
113
|
"difficulty": 2,
|
84
114
|
"topics": [
|
85
115
|
"Generics",
|
@@ -88,7 +118,10 @@
|
|
88
118
|
]
|
89
119
|
},
|
90
120
|
{
|
121
|
+
"uuid": "54ff0017-7c53-4e83-a3bd-aff2953185b7",
|
91
122
|
"slug": "raindrops",
|
123
|
+
"core": false,
|
124
|
+
"unlocked_by": null,
|
92
125
|
"difficulty": 2,
|
93
126
|
"topics": [
|
94
127
|
"Strings",
|
@@ -97,7 +130,10 @@
|
|
97
130
|
]
|
98
131
|
},
|
99
132
|
{
|
133
|
+
"uuid": "5a31217f-02fd-4be4-b64f-7a93f36f5140",
|
100
134
|
"slug": "hamming",
|
135
|
+
"core": false,
|
136
|
+
"unlocked_by": null,
|
101
137
|
"difficulty": 3,
|
102
138
|
"topics": [
|
103
139
|
"Strings",
|
@@ -106,7 +142,10 @@
|
|
106
142
|
]
|
107
143
|
},
|
108
144
|
{
|
145
|
+
"uuid": "d7f7b64e-1dba-400e-a9c1-acd521d21753",
|
109
146
|
"slug": "phone-number",
|
147
|
+
"core": false,
|
148
|
+
"unlocked_by": null,
|
110
149
|
"difficulty": 3,
|
111
150
|
"topics": [
|
112
151
|
"Optional values",
|
@@ -116,7 +155,10 @@
|
|
116
155
|
]
|
117
156
|
},
|
118
157
|
{
|
158
|
+
"uuid": "d3a10b82-ae65-4a99-968d-4f1bec62b88a",
|
119
159
|
"slug": "strain",
|
160
|
+
"core": false,
|
161
|
+
"unlocked_by": null,
|
120
162
|
"difficulty": 3,
|
121
163
|
"topics": [
|
122
164
|
"Generics",
|
@@ -125,7 +167,10 @@
|
|
125
167
|
]
|
126
168
|
},
|
127
169
|
{
|
170
|
+
"uuid": "d06505fb-3844-481a-bf7a-4e05545119f0",
|
128
171
|
"slug": "robot-name",
|
172
|
+
"core": false,
|
173
|
+
"unlocked_by": null,
|
129
174
|
"difficulty": 3,
|
130
175
|
"topics": [
|
131
176
|
"Strings",
|
@@ -133,7 +178,10 @@
|
|
133
178
|
]
|
134
179
|
},
|
135
180
|
{
|
181
|
+
"uuid": "d21f16ce-8e6e-436e-918b-e973cfc7c2a0",
|
136
182
|
"slug": "etl",
|
183
|
+
"core": false,
|
184
|
+
"unlocked_by": null,
|
137
185
|
"difficulty": 3,
|
138
186
|
"topics": [
|
139
187
|
"Lists",
|
@@ -144,7 +192,10 @@
|
|
144
192
|
]
|
145
193
|
},
|
146
194
|
{
|
195
|
+
"uuid": "39b2350c-60b5-4da0-9fb9-26f75a4bad6d",
|
147
196
|
"slug": "grains",
|
197
|
+
"core": false,
|
198
|
+
"unlocked_by": null,
|
148
199
|
"difficulty": 3,
|
149
200
|
"topics": [
|
150
201
|
"Optional values",
|
@@ -152,7 +203,10 @@
|
|
152
203
|
]
|
153
204
|
},
|
154
205
|
{
|
206
|
+
"uuid": "a4797d24-9293-41b2-b630-3ac9e3840d47",
|
155
207
|
"slug": "scrabble-score",
|
208
|
+
"core": false,
|
209
|
+
"unlocked_by": null,
|
156
210
|
"difficulty": 3,
|
157
211
|
"topics": [
|
158
212
|
"Strings",
|
@@ -160,7 +214,10 @@
|
|
160
214
|
]
|
161
215
|
},
|
162
216
|
{
|
217
|
+
"uuid": "fc58b128-24a8-48e7-90db-b4843fbdf40a",
|
163
218
|
"slug": "rna-transcription",
|
219
|
+
"core": false,
|
220
|
+
"unlocked_by": null,
|
164
221
|
"difficulty": 3,
|
165
222
|
"topics": [
|
166
223
|
"Optional values",
|
@@ -169,14 +226,20 @@
|
|
169
226
|
]
|
170
227
|
},
|
171
228
|
{
|
229
|
+
"uuid": "2be75924-fce4-49fa-b52e-6cdcf222b283",
|
172
230
|
"slug": "triangle",
|
231
|
+
"core": false,
|
232
|
+
"unlocked_by": null,
|
173
233
|
"difficulty": 3,
|
174
234
|
"topics": [
|
175
235
|
"Mathematics"
|
176
236
|
]
|
177
237
|
},
|
178
238
|
{
|
239
|
+
"uuid": "612b8880-1dd1-410d-b530-c66ec9edc1b3",
|
179
240
|
"slug": "perfect-numbers",
|
241
|
+
"core": false,
|
242
|
+
"unlocked_by": null,
|
180
243
|
"difficulty": 3,
|
181
244
|
"topics": [
|
182
245
|
"Discriminated unions",
|
@@ -186,7 +249,10 @@
|
|
186
249
|
]
|
187
250
|
},
|
188
251
|
{
|
252
|
+
"uuid": "f653decb-f7fa-47ff-81a6-2b3981261ea7",
|
189
253
|
"slug": "binary-search",
|
254
|
+
"core": false,
|
255
|
+
"unlocked_by": null,
|
190
256
|
"difficulty": 3,
|
191
257
|
"topics": [
|
192
258
|
"Searching",
|
@@ -195,7 +261,10 @@
|
|
195
261
|
]
|
196
262
|
},
|
197
263
|
{
|
264
|
+
"uuid": "e810d2eb-5c90-4135-8db8-0bda54a33d2e",
|
198
265
|
"slug": "secret-handshake",
|
266
|
+
"core": false,
|
267
|
+
"unlocked_by": null,
|
199
268
|
"difficulty": 3,
|
200
269
|
"topics": [
|
201
270
|
"Lists",
|
@@ -204,7 +273,10 @@
|
|
204
273
|
]
|
205
274
|
},
|
206
275
|
{
|
276
|
+
"uuid": "9f5ee7aa-943b-4151-8530-def1428fc00f",
|
207
277
|
"slug": "sieve",
|
278
|
+
"core": false,
|
279
|
+
"unlocked_by": null,
|
208
280
|
"difficulty": 3,
|
209
281
|
"topics": [
|
210
282
|
"Filtering",
|
@@ -213,7 +285,10 @@
|
|
213
285
|
]
|
214
286
|
},
|
215
287
|
{
|
288
|
+
"uuid": "261f75c1-df67-4c62-a2e9-ce13550f5de3",
|
216
289
|
"slug": "robot-simulator",
|
290
|
+
"core": false,
|
291
|
+
"unlocked_by": null,
|
217
292
|
"difficulty": 3,
|
218
293
|
"topics": [
|
219
294
|
"Enumerations",
|
@@ -221,7 +296,10 @@
|
|
221
296
|
]
|
222
297
|
},
|
223
298
|
{
|
299
|
+
"uuid": "f6d61a0e-068b-4519-8d4d-563713be6168",
|
224
300
|
"slug": "isogram",
|
301
|
+
"core": false,
|
302
|
+
"unlocked_by": null,
|
225
303
|
"difficulty": 3,
|
226
304
|
"topics": [
|
227
305
|
"Strings",
|
@@ -229,7 +307,10 @@
|
|
229
307
|
]
|
230
308
|
},
|
231
309
|
{
|
310
|
+
"uuid": "a6a06d7f-af28-4c42-a870-0de2c9e896c2",
|
232
311
|
"slug": "clock",
|
312
|
+
"core": false,
|
313
|
+
"unlocked_by": null,
|
233
314
|
"difficulty": 3,
|
234
315
|
"topics": [
|
235
316
|
"Time",
|
@@ -237,7 +318,10 @@
|
|
237
318
|
]
|
238
319
|
},
|
239
320
|
{
|
321
|
+
"uuid": "e6a3354e-dd32-413f-856d-53c81bd0d728",
|
240
322
|
"slug": "protein-translation",
|
323
|
+
"core": false,
|
324
|
+
"unlocked_by": null,
|
241
325
|
"difficulty": 3,
|
242
326
|
"topics": [
|
243
327
|
"Strings",
|
@@ -246,7 +330,10 @@
|
|
246
330
|
]
|
247
331
|
},
|
248
332
|
{
|
333
|
+
"uuid": "15047d95-671b-4163-96b2-834ec54ea3d5",
|
249
334
|
"slug": "beer-song",
|
335
|
+
"core": false,
|
336
|
+
"unlocked_by": null,
|
250
337
|
"difficulty": 3,
|
251
338
|
"topics": [
|
252
339
|
"Text formatting",
|
@@ -256,7 +343,10 @@
|
|
256
343
|
]
|
257
344
|
},
|
258
345
|
{
|
346
|
+
"uuid": "c6c37479-a030-44ba-9da5-97eb77233ac6",
|
259
347
|
"slug": "matrix",
|
348
|
+
"core": false,
|
349
|
+
"unlocked_by": null,
|
260
350
|
"difficulty": 4,
|
261
351
|
"topics": [
|
262
352
|
"Strings",
|
@@ -266,7 +356,10 @@
|
|
266
356
|
]
|
267
357
|
},
|
268
358
|
{
|
359
|
+
"uuid": "73770426-74a8-498f-a37c-1b12aaf71281",
|
269
360
|
"slug": "house",
|
361
|
+
"core": false,
|
362
|
+
"unlocked_by": null,
|
270
363
|
"difficulty": 4,
|
271
364
|
"topics": [
|
272
365
|
"Strings",
|
@@ -275,7 +368,10 @@
|
|
275
368
|
]
|
276
369
|
},
|
277
370
|
{
|
371
|
+
"uuid": "35a0ff51-6c85-4a39-8017-62e8eabd1c21",
|
278
372
|
"slug": "series",
|
373
|
+
"core": false,
|
374
|
+
"unlocked_by": null,
|
279
375
|
"difficulty": 4,
|
280
376
|
"topics": [
|
281
377
|
"Strings",
|
@@ -284,7 +380,10 @@
|
|
284
380
|
]
|
285
381
|
},
|
286
382
|
{
|
383
|
+
"uuid": "10c53e9d-8fa6-486c-b68a-be821dec5010",
|
287
384
|
"slug": "word-count",
|
385
|
+
"core": false,
|
386
|
+
"unlocked_by": null,
|
288
387
|
"difficulty": 4,
|
289
388
|
"topics": [
|
290
389
|
"Maps",
|
@@ -293,7 +392,10 @@
|
|
293
392
|
]
|
294
393
|
},
|
295
394
|
{
|
395
|
+
"uuid": "54633841-b60f-49a0-9f95-aeda09de6232",
|
296
396
|
"slug": "anagram",
|
397
|
+
"core": false,
|
398
|
+
"unlocked_by": null,
|
297
399
|
"difficulty": 4,
|
298
400
|
"topics": [
|
299
401
|
"Sequences",
|
@@ -302,7 +404,10 @@
|
|
302
404
|
]
|
303
405
|
},
|
304
406
|
{
|
407
|
+
"uuid": "c03319c6-1a2b-4f26-a943-242ccc6a295e",
|
305
408
|
"slug": "nucleotide-count",
|
409
|
+
"core": false,
|
410
|
+
"unlocked_by": null,
|
306
411
|
"difficulty": 4,
|
307
412
|
"topics": [
|
308
413
|
"Maps",
|
@@ -310,14 +415,20 @@
|
|
310
415
|
]
|
311
416
|
},
|
312
417
|
{
|
418
|
+
"uuid": "50a7cf00-7f5e-4f38-9a13-c8ff5c895723",
|
313
419
|
"slug": "meetup",
|
420
|
+
"core": false,
|
421
|
+
"unlocked_by": null,
|
314
422
|
"difficulty": 4,
|
315
423
|
"topics": [
|
316
424
|
"Dates"
|
317
425
|
]
|
318
426
|
},
|
319
427
|
{
|
428
|
+
"uuid": "49d45a39-c8de-4b25-9ee2-5e08de8721c0",
|
320
429
|
"slug": "prime-factors",
|
430
|
+
"core": false,
|
431
|
+
"unlocked_by": null,
|
321
432
|
"difficulty": 4,
|
322
433
|
"topics": [
|
323
434
|
"Lists",
|
@@ -327,7 +438,10 @@
|
|
327
438
|
]
|
328
439
|
},
|
329
440
|
{
|
441
|
+
"uuid": "8e311809-1de4-44c3-923a-ffd863843e6b",
|
330
442
|
"slug": "allergies",
|
443
|
+
"core": false,
|
444
|
+
"unlocked_by": null,
|
331
445
|
"difficulty": 4,
|
332
446
|
"topics": [
|
333
447
|
"Lists",
|
@@ -336,7 +450,10 @@
|
|
336
450
|
]
|
337
451
|
},
|
338
452
|
{
|
453
|
+
"uuid": "adcf2a9b-2f6c-490f-b441-ad413a03fee7",
|
339
454
|
"slug": "all-your-base",
|
455
|
+
"core": false,
|
456
|
+
"unlocked_by": null,
|
340
457
|
"difficulty": 4,
|
341
458
|
"topics": [
|
342
459
|
"Integers",
|
@@ -347,7 +464,10 @@
|
|
347
464
|
]
|
348
465
|
},
|
349
466
|
{
|
467
|
+
"uuid": "1218f854-ebb9-40dd-9487-ccc4d09c9a43",
|
350
468
|
"slug": "kindergarten-garden",
|
469
|
+
"core": false,
|
470
|
+
"unlocked_by": null,
|
351
471
|
"difficulty": 4,
|
352
472
|
"topics": [
|
353
473
|
"Enumerations",
|
@@ -356,7 +476,10 @@
|
|
356
476
|
]
|
357
477
|
},
|
358
478
|
{
|
479
|
+
"uuid": "7e81f24e-c892-4e45-b0bb-6c6420ba1f0e",
|
359
480
|
"slug": "largest-series-product",
|
481
|
+
"core": false,
|
482
|
+
"unlocked_by": null,
|
360
483
|
"difficulty": 4,
|
361
484
|
"topics": [
|
362
485
|
"Strings",
|
@@ -367,7 +490,10 @@
|
|
367
490
|
]
|
368
491
|
},
|
369
492
|
{
|
493
|
+
"uuid": "34a134c4-f9f5-46c4-97db-2f6c8c1e97f5",
|
370
494
|
"slug": "pascals-triangle",
|
495
|
+
"core": false,
|
496
|
+
"unlocked_by": null,
|
371
497
|
"difficulty": 4,
|
372
498
|
"topics": [
|
373
499
|
"Control-flow (loops)",
|
@@ -376,7 +502,10 @@
|
|
376
502
|
]
|
377
503
|
},
|
378
504
|
{
|
505
|
+
"uuid": "0e858f22-401b-44ad-b972-766e2f38e5d5",
|
379
506
|
"slug": "pythagorean-triplet",
|
507
|
+
"core": false,
|
508
|
+
"unlocked_by": null,
|
380
509
|
"difficulty": 4,
|
381
510
|
"topics": [
|
382
511
|
"Integers",
|
@@ -386,7 +515,10 @@
|
|
386
515
|
]
|
387
516
|
},
|
388
517
|
{
|
518
|
+
"uuid": "aa135256-28c8-4e3e-a942-8ae5ae996ab5",
|
389
519
|
"slug": "saddle-points",
|
520
|
+
"core": false,
|
521
|
+
"unlocked_by": null,
|
390
522
|
"difficulty": 4,
|
391
523
|
"topics": [
|
392
524
|
"Matrices",
|
@@ -396,7 +528,10 @@
|
|
396
528
|
]
|
397
529
|
},
|
398
530
|
{
|
531
|
+
"uuid": "876a07ce-0ee4-4ded-bab3-c9b3f8746d57",
|
399
532
|
"slug": "acronym",
|
533
|
+
"core": false,
|
534
|
+
"unlocked_by": null,
|
400
535
|
"difficulty": 4,
|
401
536
|
"topics": [
|
402
537
|
"Strings",
|
@@ -404,7 +539,10 @@
|
|
404
539
|
]
|
405
540
|
},
|
406
541
|
{
|
542
|
+
"uuid": "163d247a-1763-4876-870a-63deb3a3daa8",
|
407
543
|
"slug": "run-length-encoding",
|
544
|
+
"core": false,
|
545
|
+
"unlocked_by": null,
|
408
546
|
"difficulty": 5,
|
409
547
|
"topics": [
|
410
548
|
"Algorithms",
|
@@ -413,7 +551,10 @@
|
|
413
551
|
]
|
414
552
|
},
|
415
553
|
{
|
554
|
+
"uuid": "4c08ec90-4c5a-4dae-812c-52899b1a29cf",
|
416
555
|
"slug": "roman-numerals",
|
556
|
+
"core": false,
|
557
|
+
"unlocked_by": null,
|
417
558
|
"difficulty": 5,
|
418
559
|
"topics": [
|
419
560
|
"Sequences",
|
@@ -422,7 +563,10 @@
|
|
422
563
|
]
|
423
564
|
},
|
424
565
|
{
|
566
|
+
"uuid": "168823e4-de57-40c0-ac8d-bec6ccf9c96d",
|
425
567
|
"slug": "simple-linked-list",
|
568
|
+
"core": false,
|
569
|
+
"unlocked_by": null,
|
426
570
|
"difficulty": 5,
|
427
571
|
"topics": [
|
428
572
|
"Classes",
|
@@ -432,7 +576,10 @@
|
|
432
576
|
]
|
433
577
|
},
|
434
578
|
{
|
579
|
+
"uuid": "842f0674-fcf3-48c3-80ae-c6d43c65f270",
|
435
580
|
"slug": "atbash-cipher",
|
581
|
+
"core": false,
|
582
|
+
"unlocked_by": null,
|
436
583
|
"difficulty": 5,
|
437
584
|
"topics": [
|
438
585
|
"Strings",
|
@@ -441,7 +588,10 @@
|
|
441
588
|
]
|
442
589
|
},
|
443
590
|
{
|
591
|
+
"uuid": "6e379741-8337-41f3-9790-dc93cacdc9b6",
|
444
592
|
"slug": "simple-cipher",
|
593
|
+
"core": false,
|
594
|
+
"unlocked_by": null,
|
445
595
|
"difficulty": 5,
|
446
596
|
"topics": [
|
447
597
|
"Optional values",
|
@@ -451,14 +601,20 @@
|
|
451
601
|
]
|
452
602
|
},
|
453
603
|
{
|
604
|
+
"uuid": "ec0334d9-df30-4e61-bea6-bd3f7c8d13e6",
|
454
605
|
"slug": "bank-account",
|
606
|
+
"core": false,
|
607
|
+
"unlocked_by": null,
|
455
608
|
"difficulty": 5,
|
456
609
|
"topics": [
|
457
610
|
"Parallellism"
|
458
611
|
]
|
459
612
|
},
|
460
613
|
{
|
614
|
+
"uuid": "b047cdd2-5afa-47a0-b48d-5c235c1099dc",
|
461
615
|
"slug": "crypto-square",
|
616
|
+
"core": false,
|
617
|
+
"unlocked_by": null,
|
462
618
|
"difficulty": 5,
|
463
619
|
"topics": [
|
464
620
|
"Strings",
|
@@ -468,7 +624,10 @@
|
|
468
624
|
]
|
469
625
|
},
|
470
626
|
{
|
627
|
+
"uuid": "9d25bf46-52d6-435e-a384-38c25517f8ee",
|
471
628
|
"slug": "bracket-push",
|
629
|
+
"core": false,
|
630
|
+
"unlocked_by": null,
|
472
631
|
"difficulty": 5,
|
473
632
|
"topics": [
|
474
633
|
"Strings",
|
@@ -476,7 +635,10 @@
|
|
476
635
|
]
|
477
636
|
},
|
478
637
|
{
|
638
|
+
"uuid": "1af833c7-2e0d-4c96-a3a9-d4812df5d1a1",
|
479
639
|
"slug": "queen-attack",
|
640
|
+
"core": false,
|
641
|
+
"unlocked_by": null,
|
480
642
|
"difficulty": 5,
|
481
643
|
"topics": [
|
482
644
|
"Strings",
|
@@ -486,7 +648,10 @@
|
|
486
648
|
]
|
487
649
|
},
|
488
650
|
{
|
651
|
+
"uuid": "8956383c-bea2-4bcc-b7af-df19f94e15e6",
|
489
652
|
"slug": "luhn",
|
653
|
+
"core": false,
|
654
|
+
"unlocked_by": null,
|
490
655
|
"difficulty": 5,
|
491
656
|
"topics": [
|
492
657
|
"Strings",
|
@@ -495,7 +660,10 @@
|
|
495
660
|
]
|
496
661
|
},
|
497
662
|
{
|
663
|
+
"uuid": "60deb77c-45f2-48a1-bff8-b0cef3b07500",
|
498
664
|
"slug": "food-chain",
|
665
|
+
"core": false,
|
666
|
+
"unlocked_by": null,
|
499
667
|
"difficulty": 5,
|
500
668
|
"topics": [
|
501
669
|
"Text formatting",
|
@@ -503,7 +671,10 @@
|
|
503
671
|
]
|
504
672
|
},
|
505
673
|
{
|
674
|
+
"uuid": "bec1be3e-2d1c-4cb7-9398-dd0249e79d2e",
|
506
675
|
"slug": "linked-list",
|
676
|
+
"core": false,
|
677
|
+
"unlocked_by": null,
|
507
678
|
"difficulty": 5,
|
508
679
|
"topics": [
|
509
680
|
"Lists",
|
@@ -512,14 +683,20 @@
|
|
512
683
|
]
|
513
684
|
},
|
514
685
|
{
|
686
|
+
"uuid": "e0810022-d3ea-463a-97da-dfdac08e3c63",
|
515
687
|
"slug": "spiral-matrix",
|
688
|
+
"core": false,
|
689
|
+
"unlocked_by": null,
|
516
690
|
"difficulty": 5,
|
517
691
|
"topics": [
|
518
692
|
"Matrices"
|
519
693
|
]
|
520
694
|
},
|
521
695
|
{
|
696
|
+
"uuid": "0605da19-048e-4a1f-b508-5d77d1e384a5",
|
522
697
|
"slug": "custom-set",
|
698
|
+
"core": false,
|
699
|
+
"unlocked_by": null,
|
523
700
|
"difficulty": 5,
|
524
701
|
"topics": [
|
525
702
|
"Sets",
|
@@ -528,7 +705,10 @@
|
|
528
705
|
]
|
529
706
|
},
|
530
707
|
{
|
708
|
+
"uuid": "a557f7e3-9fc0-4cd8-bab1-b4d8fc88402d",
|
531
709
|
"slug": "parallel-letter-frequency",
|
710
|
+
"core": false,
|
711
|
+
"unlocked_by": null,
|
532
712
|
"difficulty": 5,
|
533
713
|
"topics": [
|
534
714
|
"Maps",
|
@@ -540,14 +720,20 @@
|
|
540
720
|
]
|
541
721
|
},
|
542
722
|
{
|
723
|
+
"uuid": "5ce09233-9ec1-4422-aa97-2d90ea67146b",
|
543
724
|
"slug": "book-store",
|
725
|
+
"core": false,
|
726
|
+
"unlocked_by": null,
|
544
727
|
"difficulty": 5,
|
545
728
|
"topics": [
|
546
729
|
"Recursion"
|
547
730
|
]
|
548
731
|
},
|
549
732
|
{
|
733
|
+
"uuid": "c7838d98-35db-4a84-914e-c05cafda2bed",
|
550
734
|
"slug": "nth-prime",
|
735
|
+
"core": false,
|
736
|
+
"unlocked_by": null,
|
551
737
|
"difficulty": 6,
|
552
738
|
"topics": [
|
553
739
|
"Optional values",
|
@@ -556,7 +742,10 @@
|
|
556
742
|
]
|
557
743
|
},
|
558
744
|
{
|
745
|
+
"uuid": "fc57c00f-ca56-499d-bb46-0ce006b60923",
|
559
746
|
"slug": "palindrome-products",
|
747
|
+
"core": false,
|
748
|
+
"unlocked_by": null,
|
560
749
|
"difficulty": 6,
|
561
750
|
"topics": [
|
562
751
|
"Sets",
|
@@ -566,7 +755,10 @@
|
|
566
755
|
]
|
567
756
|
},
|
568
757
|
{
|
758
|
+
"uuid": "221be13e-da2a-4f0a-9702-84744cbcaca6",
|
569
759
|
"slug": "ocr-numbers",
|
760
|
+
"core": false,
|
761
|
+
"unlocked_by": null,
|
570
762
|
"difficulty": 6,
|
571
763
|
"topics": [
|
572
764
|
"Lists",
|
@@ -577,7 +769,10 @@
|
|
577
769
|
]
|
578
770
|
},
|
579
771
|
{
|
772
|
+
"uuid": "088e1441-a648-4dc4-ad13-c5fdd8e8a104",
|
580
773
|
"slug": "pig-latin",
|
774
|
+
"core": false,
|
775
|
+
"unlocked_by": null,
|
581
776
|
"difficulty": 6,
|
582
777
|
"topics": [
|
583
778
|
"Strings",
|
@@ -585,7 +780,10 @@
|
|
585
780
|
]
|
586
781
|
},
|
587
782
|
{
|
783
|
+
"uuid": "f70d2b0c-9660-4538-9897-2f233b93d0c3",
|
588
784
|
"slug": "binary-search-tree",
|
785
|
+
"core": false,
|
786
|
+
"unlocked_by": null,
|
589
787
|
"difficulty": 6,
|
590
788
|
"topics": [
|
591
789
|
"Searching",
|
@@ -595,7 +793,10 @@
|
|
595
793
|
]
|
596
794
|
},
|
597
795
|
{
|
796
|
+
"uuid": "755b5cf5-97f2-41c1-9b0b-24e6db68b7eb",
|
598
797
|
"slug": "rail-fence-cipher",
|
798
|
+
"core": false,
|
799
|
+
"unlocked_by": null,
|
599
800
|
"difficulty": 6,
|
600
801
|
"topics": [
|
601
802
|
"Strings",
|
@@ -604,7 +805,10 @@
|
|
604
805
|
]
|
605
806
|
},
|
606
807
|
{
|
808
|
+
"uuid": "9ea2b27f-4c3a-463d-8869-4e930808ce93",
|
607
809
|
"slug": "bowling",
|
810
|
+
"core": false,
|
811
|
+
"unlocked_by": null,
|
608
812
|
"difficulty": 6,
|
609
813
|
"topics": [
|
610
814
|
"Algorithms",
|
@@ -613,7 +817,10 @@
|
|
613
817
|
]
|
614
818
|
},
|
615
819
|
{
|
820
|
+
"uuid": "d619cdc2-b8b7-442d-a2b2-41383c33d219",
|
616
821
|
"slug": "dominoes",
|
822
|
+
"core": false,
|
823
|
+
"unlocked_by": null,
|
617
824
|
"difficulty": 7,
|
618
825
|
"topics": [
|
619
826
|
"Lists",
|
@@ -623,7 +830,10 @@
|
|
623
830
|
]
|
624
831
|
},
|
625
832
|
{
|
833
|
+
"uuid": "00a09826-f63b-4558-8ad0-6cdb7836dfea",
|
626
834
|
"slug": "sublist",
|
835
|
+
"core": false,
|
836
|
+
"unlocked_by": null,
|
627
837
|
"difficulty": 7,
|
628
838
|
"topics": [
|
629
839
|
"Generics",
|
@@ -632,7 +842,10 @@
|
|
632
842
|
]
|
633
843
|
},
|
634
844
|
{
|
845
|
+
"uuid": "04c3197c-cd3d-4853-af3f-50c189af80c7",
|
635
846
|
"slug": "minesweeper",
|
847
|
+
"core": false,
|
848
|
+
"unlocked_by": null,
|
636
849
|
"difficulty": 7,
|
637
850
|
"topics": [
|
638
851
|
"Lists",
|
@@ -642,7 +855,10 @@
|
|
642
855
|
]
|
643
856
|
},
|
644
857
|
{
|
858
|
+
"uuid": "ded3ae4c-43a7-46df-b43b-42aab419c2d8",
|
645
859
|
"slug": "wordy",
|
860
|
+
"core": false,
|
861
|
+
"unlocked_by": null,
|
646
862
|
"difficulty": 7,
|
647
863
|
"topics": [
|
648
864
|
"Mathematics",
|
@@ -653,7 +869,10 @@
|
|
653
869
|
]
|
654
870
|
},
|
655
871
|
{
|
872
|
+
"uuid": "62dd342a-591c-497f-8f3a-64748952b1af",
|
656
873
|
"slug": "change",
|
874
|
+
"core": false,
|
875
|
+
"unlocked_by": null,
|
657
876
|
"difficulty": 7,
|
658
877
|
"topics": [
|
659
878
|
"Integers",
|
@@ -663,7 +882,10 @@
|
|
663
882
|
]
|
664
883
|
},
|
665
884
|
{
|
885
|
+
"uuid": "5ea6b0e1-513e-462f-9741-46f060638a92",
|
666
886
|
"slug": "connect",
|
887
|
+
"core": false,
|
888
|
+
"unlocked_by": null,
|
667
889
|
"difficulty": 8,
|
668
890
|
"topics": [
|
669
891
|
"Recursion",
|
@@ -675,14 +897,20 @@
|
|
675
897
|
]
|
676
898
|
},
|
677
899
|
{
|
900
|
+
"uuid": "eb9387d6-3fac-460b-ad14-657c0f4d2d88",
|
678
901
|
"slug": "zebra-puzzle",
|
902
|
+
"core": false,
|
903
|
+
"unlocked_by": null,
|
679
904
|
"difficulty": 8,
|
680
905
|
"topics": [
|
681
906
|
"Logic"
|
682
907
|
]
|
683
908
|
},
|
684
909
|
{
|
910
|
+
"uuid": "e0e0ef68-6759-42e3-8542-3d165f8900d7",
|
685
911
|
"slug": "say",
|
912
|
+
"core": false,
|
913
|
+
"unlocked_by": null,
|
686
914
|
"difficulty": 8,
|
687
915
|
"topics": [
|
688
916
|
"Strings",
|
@@ -692,7 +920,10 @@
|
|
692
920
|
]
|
693
921
|
},
|
694
922
|
{
|
923
|
+
"uuid": "64002f5b-e373-4850-92bf-88461d49376e",
|
695
924
|
"slug": "alphametics",
|
925
|
+
"core": false,
|
926
|
+
"unlocked_by": null,
|
696
927
|
"difficulty": 9,
|
697
928
|
"topics": [
|
698
929
|
"Maps",
|
@@ -702,7 +933,10 @@
|
|
702
933
|
]
|
703
934
|
},
|
704
935
|
{
|
936
|
+
"uuid": "8b4c7142-6790-4d89-a5cb-fa094e2c969a",
|
705
937
|
"slug": "sgf-parsing",
|
938
|
+
"core": false,
|
939
|
+
"unlocked_by": null,
|
706
940
|
"difficulty": 9,
|
707
941
|
"topics": [
|
708
942
|
"Parsing",
|
@@ -710,14 +944,20 @@
|
|
710
944
|
]
|
711
945
|
},
|
712
946
|
{
|
947
|
+
"uuid": "e6e88c52-b984-479d-8b9c-047d25f2aa47",
|
713
948
|
"slug": "lens-person",
|
949
|
+
"core": false,
|
950
|
+
"unlocked_by": null,
|
714
951
|
"difficulty": 9,
|
715
952
|
"topics": [
|
716
953
|
|
717
954
|
]
|
718
955
|
},
|
719
956
|
{
|
957
|
+
"uuid": "12dbe514-848b-4fd2-868d-7f6195092e23",
|
720
958
|
"slug": "variable-length-quantity",
|
959
|
+
"core": false,
|
960
|
+
"unlocked_by": null,
|
721
961
|
"difficulty": 9,
|
722
962
|
"topics": [
|
723
963
|
"Discriminated unions",
|
@@ -727,7 +967,10 @@
|
|
727
967
|
]
|
728
968
|
},
|
729
969
|
{
|
970
|
+
"uuid": "bc5b07e2-f641-4fda-818d-12502cdbb066",
|
730
971
|
"slug": "zipper",
|
972
|
+
"core": false,
|
973
|
+
"unlocked_by": null,
|
731
974
|
"difficulty": 10,
|
732
975
|
"topics": [
|
733
976
|
"Generics",
|
@@ -736,21 +979,38 @@
|
|
736
979
|
]
|
737
980
|
},
|
738
981
|
{
|
982
|
+
"uuid": "2c85199f-4d09-485b-9925-3b21f81ee054",
|
739
983
|
"slug": "forth",
|
984
|
+
"core": false,
|
985
|
+
"unlocked_by": null,
|
740
986
|
"difficulty": 10,
|
741
987
|
"topics": [
|
742
988
|
"Strings",
|
743
989
|
"Mathematics",
|
744
990
|
"Parsing"
|
745
991
|
]
|
992
|
+
},
|
993
|
+
{
|
994
|
+
"uuid": "6cc53fdc-4423-47fe-abac-7688259b0ac5",
|
995
|
+
"slug": "binary",
|
996
|
+
"deprecated": true
|
997
|
+
},
|
998
|
+
{
|
999
|
+
"uuid": "7c949a14-70dc-4034-874f-0c9e3217fcf8",
|
1000
|
+
"slug": "hexadecimal",
|
1001
|
+
"deprecated": true
|
1002
|
+
},
|
1003
|
+
{
|
1004
|
+
"uuid": "403063a8-9f29-409a-8bf4-a2400521e19b",
|
1005
|
+
"slug": "octal",
|
1006
|
+
"deprecated": true
|
1007
|
+
},
|
1008
|
+
{
|
1009
|
+
"uuid": "616e49fe-b6eb-4384-9af4-b8413d4d0eab",
|
1010
|
+
"slug": "trinary",
|
1011
|
+
"deprecated": true
|
746
1012
|
}
|
747
1013
|
],
|
748
|
-
"deprecated": [
|
749
|
-
"binary",
|
750
|
-
"hexadecimal",
|
751
|
-
"octal",
|
752
|
-
"trinary"
|
753
|
-
],
|
754
1014
|
"foregone": [
|
755
1015
|
|
756
1016
|
]
|