trackler 2.2.1.103 → 2.2.1.104
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/trackler/version.rb +1 -1
- data/problem-specifications/exercises/all-your-base/canonical-data.json +43 -43
- data/tracks/bash/.github/PULL_REQUEST_TEMPLATE.md +10 -0
- data/tracks/cfml/tasks/exercise_template/.meta/hints.md +1 -0
- data/tracks/csharp/config/exercise_readme.go.tmpl +4 -4
- data/tracks/csharp/exercises/accumulate/README.md +1 -5
- data/tracks/csharp/exercises/acronym/README.md +1 -3
- data/tracks/csharp/exercises/all-your-base/README.md +2 -4
- data/tracks/csharp/exercises/allergies/README.md +1 -3
- data/tracks/csharp/exercises/alphametics/README.md +3 -5
- data/tracks/csharp/exercises/anagram/README.md +1 -2
- data/tracks/csharp/exercises/armstrong-numbers/README.md +14 -1
- data/tracks/csharp/exercises/atbash-cipher/README.md +3 -3
- data/tracks/csharp/exercises/bank-account/README.md +1 -3
- data/tracks/csharp/exercises/beer-song/README.md +3 -4
- data/tracks/csharp/exercises/binary-search-tree/README.md +1 -2
- data/tracks/csharp/exercises/binary-search/README.md +1 -2
- data/tracks/csharp/exercises/binary/README.md +3 -2
- data/tracks/csharp/exercises/bob/README.md +3 -3
- data/tracks/csharp/exercises/book-store/README.md +6 -7
- data/tracks/csharp/exercises/bowling/README.md +21 -8
- data/tracks/csharp/exercises/bracket-push/README.md +1 -2
- data/tracks/csharp/exercises/change/README.md +2 -3
- data/tracks/csharp/exercises/circular-buffer/README.md +14 -8
- data/tracks/csharp/exercises/clock/README.md +1 -2
- data/tracks/csharp/exercises/collatz-conjecture/README.md +4 -4
- data/tracks/csharp/exercises/complex-numbers/README.md +1 -2
- data/tracks/csharp/exercises/connect/README.md +2 -4
- data/tracks/csharp/exercises/crypto-square/README.md +11 -10
- data/tracks/csharp/exercises/custom-set/README.md +1 -3
- data/tracks/csharp/exercises/diamond/README.md +10 -9
- data/tracks/csharp/exercises/difference-of-squares/README.md +1 -2
- data/tracks/csharp/exercises/diffie-hellman/README.md +1 -2
- data/tracks/csharp/exercises/dominoes/README.md +10 -3
- data/tracks/csharp/exercises/dot-dsl/README.md +2 -4
- data/tracks/csharp/exercises/error-handling/README.md +1 -3
- data/tracks/csharp/exercises/etl/README.md +4 -3
- data/tracks/csharp/exercises/flatten-array/README.md +2 -4
- data/tracks/csharp/exercises/food-chain/README.md +2 -3
- data/tracks/csharp/exercises/forth/README.md +1 -3
- data/tracks/csharp/exercises/gigasecond/README.md +1 -2
- data/tracks/csharp/exercises/go-counting/README.md +2 -4
- data/tracks/csharp/exercises/grade-school/README.md +1 -3
- data/tracks/csharp/exercises/grains/README.md +1 -3
- data/tracks/csharp/exercises/grep/README.md +13 -14
- data/tracks/csharp/exercises/hamming/README.md +1 -2
- data/tracks/csharp/exercises/hangman/README.md +1 -3
- data/tracks/csharp/exercises/hello-world/README.md +1 -2
- data/tracks/csharp/exercises/hexadecimal/README.md +1 -2
- data/tracks/csharp/exercises/house/README.md +3 -5
- data/tracks/csharp/exercises/isbn-verifier/README.md +34 -22
- data/tracks/csharp/exercises/isogram/README.md +3 -3
- data/tracks/csharp/exercises/kindergarten-garden/README.md +14 -15
- data/tracks/csharp/exercises/largest-series-product/README.md +1 -2
- data/tracks/csharp/exercises/leap/README.md +2 -3
- data/tracks/csharp/exercises/ledger/README.md +1 -3
- data/tracks/csharp/exercises/linked-list/README.md +11 -12
- data/tracks/csharp/exercises/list-ops/README.md +1 -3
- data/tracks/csharp/exercises/luhn/README.md +8 -9
- data/tracks/csharp/exercises/markdown/README.md +1 -3
- data/tracks/csharp/exercises/matrix/README.md +7 -6
- data/tracks/csharp/exercises/meetup/README.md +17 -15
- data/tracks/csharp/exercises/minesweeper/README.md +1 -3
- data/tracks/csharp/exercises/nth-prime/README.md +1 -2
- data/tracks/csharp/exercises/nucleotide-count/README.md +9 -24
- data/tracks/csharp/exercises/ocr-numbers/README.md +7 -8
- data/tracks/csharp/exercises/octal/README.md +7 -4
- data/tracks/csharp/exercises/palindrome-products/README.md +16 -18
- data/tracks/csharp/exercises/pangram/README.md +2 -3
- data/tracks/csharp/exercises/parallel-letter-frequency/README.md +1 -3
- data/tracks/csharp/exercises/pascals-triangle/README.md +3 -4
- data/tracks/csharp/exercises/perfect-numbers/README.md +3 -4
- data/tracks/csharp/exercises/phone-number/README.md +5 -5
- data/tracks/csharp/exercises/pig-latin/README.md +1 -2
- data/tracks/csharp/exercises/poker/README.md +1 -2
- data/tracks/csharp/exercises/pov/README.md +4 -7
- data/tracks/csharp/exercises/prime-factors/README.md +1 -2
- data/tracks/csharp/exercises/protein-translation/README.md +6 -8
- data/tracks/csharp/exercises/proverb/README.md +15 -11
- data/tracks/csharp/exercises/pythagorean-triplet/README.md +4 -5
- data/tracks/csharp/exercises/queen-attack/README.md +2 -3
- data/tracks/csharp/exercises/rail-fence-cipher/README.md +13 -9
- data/tracks/csharp/exercises/raindrops/README.md +1 -2
- data/tracks/csharp/exercises/react/README.md +1 -3
- data/tracks/csharp/exercises/rectangles/README.md +17 -19
- data/tracks/csharp/exercises/reverse-string/README.md +16 -1
- data/tracks/csharp/exercises/rna-transcription/README.md +3 -4
- data/tracks/csharp/exercises/robot-name/README.md +1 -2
- data/tracks/csharp/exercises/robot-simulator/README.md +1 -2
- data/tracks/csharp/exercises/roman-numerals/README.md +2 -3
- data/tracks/csharp/exercises/rotational-cipher/README.md +3 -3
- data/tracks/csharp/exercises/run-length-encoding/README.md +5 -6
- data/tracks/csharp/exercises/saddle-points/README.md +3 -4
- data/tracks/csharp/exercises/say/README.md +1 -2
- data/tracks/csharp/exercises/scale-generator/README.md +1 -4
- data/tracks/csharp/exercises/scrabble-score/README.md +4 -3
- data/tracks/csharp/exercises/secret-handshake/README.md +2 -3
- data/tracks/csharp/exercises/series/README.md +1 -2
- data/tracks/csharp/exercises/sgf-parsing/README.md +5 -7
- data/tracks/csharp/exercises/sieve/README.md +1 -2
- data/tracks/csharp/exercises/simple-cipher/README.md +6 -9
- data/tracks/csharp/exercises/simple-linked-list/README.md +1 -2
- data/tracks/csharp/exercises/space-age/README.md +2 -3
- data/tracks/csharp/exercises/spiral-matrix/README.md +7 -8
- data/tracks/csharp/exercises/strain/README.md +1 -2
- data/tracks/csharp/exercises/sublist/README.md +1 -3
- data/tracks/csharp/exercises/sum-of-multiples/README.md +4 -8
- data/tracks/csharp/exercises/tournament/README.md +6 -8
- data/tracks/csharp/exercises/transpose/README.md +8 -9
- data/tracks/csharp/exercises/tree-building/README.md +4 -6
- data/tracks/csharp/exercises/triangle/README.md +10 -8
- data/tracks/csharp/exercises/trinary/README.md +2 -3
- data/tracks/csharp/exercises/twelve-days/README.md +2 -3
- data/tracks/csharp/exercises/two-bucket/README.md +11 -12
- data/tracks/csharp/exercises/two-fer/README.md +8 -9
- data/tracks/csharp/exercises/variable-length-quantity/README.md +7 -9
- data/tracks/csharp/exercises/word-count/README.md +2 -4
- data/tracks/csharp/exercises/word-search/README.md +2 -4
- data/tracks/csharp/exercises/wordy/README.md +1 -7
- data/tracks/csharp/exercises/zebra-puzzle/README.md +1 -2
- data/tracks/csharp/exercises/zipper/README.md +2 -4
- data/tracks/dart/config.json +2 -2
- data/tracks/go/config/exercise_readme.go.tmpl +17 -4
- data/tracks/go/exercises/acronym/README.md +0 -1
- data/tracks/go/exercises/all-your-base/README.md +0 -1
- data/tracks/go/exercises/allergies/README.md +0 -1
- data/tracks/go/exercises/alphametics/README.md +0 -1
- data/tracks/go/exercises/atbash-cipher/README.md +2 -1
- data/tracks/go/exercises/bank-account/README.md +0 -1
- data/tracks/go/exercises/beer-song/README.md +2 -2
- data/tracks/go/exercises/binary/README.md +2 -0
- data/tracks/go/exercises/bowling/README.md +20 -6
- data/tracks/go/exercises/change/README.md +1 -1
- data/tracks/go/exercises/circular-buffer/README.md +13 -6
- data/tracks/go/exercises/collatz-conjecture/README.md +1 -1
- data/tracks/go/exercises/connect/README.md +1 -2
- data/tracks/go/exercises/counter/README.md +0 -1
- data/tracks/go/exercises/crypto-square/README.md +10 -8
- data/tracks/go/exercises/custom-set/README.md +0 -1
- data/tracks/go/exercises/diamond/README.md +6 -6
- data/tracks/go/exercises/dominoes/README.md +0 -1
- data/tracks/go/exercises/error-handling/README.md +0 -1
- data/tracks/go/exercises/etl/README.md +3 -1
- data/tracks/go/exercises/food-chain/README.md +1 -1
- data/tracks/go/exercises/forth/README.md +0 -1
- data/tracks/go/exercises/grade-school/README.md +0 -1
- data/tracks/go/exercises/grains/README.md +0 -1
- data/tracks/go/exercises/house/README.md +2 -3
- data/tracks/go/exercises/isbn-verifier/README.md +26 -21
- data/tracks/go/exercises/isogram/README.md +2 -1
- data/tracks/go/exercises/kindergarten-garden/README.md +13 -13
- data/tracks/go/exercises/leap/README.md +1 -1
- data/tracks/go/exercises/ledger/README.md +0 -1
- data/tracks/go/exercises/luhn/README.md +7 -7
- data/tracks/go/exercises/matrix/README.md +6 -4
- data/tracks/go/exercises/meetup/README.md +16 -13
- data/tracks/go/exercises/minesweeper/README.md +0 -1
- data/tracks/go/exercises/nucleotide-count/README.md +25 -17
- data/tracks/go/exercises/ocr-numbers/README.md +6 -6
- data/tracks/go/exercises/octal/README.md +6 -2
- data/tracks/go/exercises/palindrome-products/README.md +15 -16
- data/tracks/go/exercises/pangram/README.md +1 -1
- data/tracks/go/exercises/parallel-letter-frequency/README.md +0 -1
- data/tracks/go/exercises/pascals-triangle/README.md +2 -2
- data/tracks/go/exercises/pov/README.md +3 -5
- data/tracks/go/exercises/protein-translation/README.md +5 -6
- data/tracks/go/exercises/pythagorean-triplet/README.md +3 -3
- data/tracks/go/exercises/queen-attack/README.md +1 -1
- data/tracks/go/exercises/react/README.md +0 -1
- data/tracks/go/exercises/reverse-string/README.md +1 -1
- data/tracks/go/exercises/rna-transcription/README.md +2 -2
- data/tracks/go/exercises/robot-name/README.md +15 -0
- data/tracks/go/exercises/roman-numerals/README.md +1 -1
- data/tracks/go/exercises/rotational-cipher/README.md +0 -1
- data/tracks/go/exercises/run-length-encoding/README.md +21 -4
- data/tracks/go/exercises/saddle-points/README.md +2 -2
- data/tracks/go/exercises/scrabble-score/README.md +3 -1
- data/tracks/go/exercises/secret-handshake/README.md +1 -1
- data/tracks/go/exercises/simple-linked-list/README.md +1 -2
- data/tracks/go/exercises/space-age/README.md +1 -2
- data/tracks/go/exercises/spiral-matrix/README.md +1 -1
- data/tracks/go/exercises/sublist/README.md +0 -1
- data/tracks/go/exercises/sum-of-multiples/README.md +3 -6
- data/tracks/go/exercises/tournament/README.md +5 -6
- data/tracks/go/exercises/transpose/README.md +7 -7
- data/tracks/go/exercises/tree-building/README.md +3 -4
- data/tracks/go/exercises/triangle/README.md +21 -6
- data/tracks/go/exercises/trinary/README.md +1 -1
- data/tracks/go/exercises/twelve-days/README.md +2 -3
- data/tracks/go/exercises/two-fer/README.md +2 -31
- data/tracks/go/exercises/variable-length-quantity/README.md +6 -7
- data/tracks/go/exercises/word-count/README.md +1 -2
- data/tracks/go/exercises/word-search/README.md +1 -2
- data/tracks/go/exercises/wordy/README.md +0 -5
- data/tracks/groovy/config.json +11 -0
- data/tracks/groovy/exercises/rotational-cipher/Example.groovy +38 -0
- data/tracks/groovy/exercises/rotational-cipher/README.md +49 -0
- data/tracks/groovy/exercises/rotational-cipher/RotationalCipher.groovy +11 -0
- data/tracks/groovy/exercises/rotational-cipher/RotationalCipherSpec.groovy +68 -0
- data/tracks/haskell/exercises/acronym/package.yaml +1 -1
- data/tracks/haskell/exercises/acronym/test/Tests.hs +2 -6
- data/tracks/haskell/exercises/anagram/package.yaml +1 -1
- data/tracks/haskell/exercises/anagram/test/Tests.hs +0 -20
- data/tracks/haskell/exercises/clock/package.yaml +1 -1
- data/tracks/haskell/exercises/clock/test/Tests.hs +16 -9
- data/tracks/haskell/exercises/complex-numbers/package.yaml +1 -1
- data/tracks/haskell/exercises/custom-set/package.yaml +1 -1
- data/tracks/haskell/exercises/hamming/package.yaml +1 -1
- data/tracks/haskell/exercises/kindergarten-garden/package.yaml +1 -1
- data/tracks/haskell/exercises/matrix/package.yaml +1 -1
- data/tracks/haskell/exercises/matrix/test/Tests.hs +25 -13
- data/tracks/haskell/exercises/ocr-numbers/package.yaml +1 -1
- data/tracks/haskell/exercises/prime-factors/package.yaml +1 -1
- data/tracks/haskell/exercises/queen-attack/package.yaml +1 -1
- data/tracks/haskell/exercises/rail-fence-cipher/package.yaml +1 -1
- data/tracks/haskell/exercises/raindrops/package.yaml +1 -1
- data/tracks/haskell/exercises/robot-simulator/package.yaml +1 -1
- data/tracks/haskell/exercises/roman-numerals/package.yaml +1 -1
- data/tracks/haskell/exercises/roman-numerals/test/Tests.hs +4 -0
- data/tracks/haskell/exercises/run-length-encoding/package.yaml +1 -1
- data/tracks/haskell/exercises/word-count/package.yaml +1 -1
- data/tracks/java/config.json +0 -1
- data/tracks/java/exercises/forth/README.md +1 -1
- data/tracks/objective-c/config/exercise_readme.go.tmpl +22 -4
- data/tracks/objective-c/exercises/acronym/README.md +8 -3
- data/tracks/objective-c/exercises/all-your-base/README.md +8 -3
- data/tracks/objective-c/exercises/allergies/README.md +8 -3
- data/tracks/objective-c/exercises/anagram/README.md +8 -2
- data/tracks/objective-c/exercises/atbash-cipher/README.md +10 -3
- data/tracks/objective-c/exercises/beer-song/README.md +10 -4
- data/tracks/objective-c/exercises/binary-search/README.md +8 -2
- data/tracks/objective-c/exercises/bob/.meta/description.md +10 -0
- data/tracks/objective-c/exercises/bob/README.md +8 -2
- data/tracks/objective-c/exercises/bracket-push/README.md +8 -2
- data/tracks/objective-c/exercises/clock/README.md +8 -2
- data/tracks/objective-c/exercises/collatz-conjecture/README.md +8 -2
- data/tracks/objective-c/exercises/crypto-square/README.md +18 -10
- data/tracks/objective-c/exercises/difference-of-squares/README.md +8 -2
- data/tracks/objective-c/exercises/etl/README.md +11 -3
- data/tracks/objective-c/exercises/flatten-array/README.md +9 -4
- data/tracks/objective-c/exercises/gigasecond/README.md +8 -2
- data/tracks/objective-c/exercises/grade-school/README.md +8 -3
- data/tracks/objective-c/exercises/grains/README.md +8 -2
- data/tracks/objective-c/exercises/hamming/README.md +8 -2
- data/tracks/objective-c/exercises/hello-world/README.md +8 -2
- data/tracks/objective-c/exercises/isogram/README.md +10 -3
- data/tracks/objective-c/exercises/largest-series-product/README.md +8 -2
- data/tracks/objective-c/exercises/leap/README.md +9 -3
- data/tracks/objective-c/exercises/luhn/README.md +15 -9
- data/tracks/objective-c/exercises/meetup/README.md +24 -15
- data/tracks/objective-c/exercises/nth-prime/README.md +8 -2
- data/tracks/objective-c/exercises/nucleotide-count/README.md +16 -24
- data/tracks/objective-c/exercises/pangram/README.md +9 -3
- data/tracks/objective-c/exercises/pascals-triangle/README.md +10 -4
- data/tracks/objective-c/exercises/perfect-numbers/README.md +10 -4
- data/tracks/objective-c/exercises/phone-number/README.md +12 -5
- data/tracks/objective-c/exercises/raindrops/README.md +8 -2
- data/tracks/objective-c/exercises/rna-transcription/README.md +10 -4
- data/tracks/objective-c/exercises/robot-name/README.md +8 -2
- data/tracks/objective-c/exercises/roman-numerals/README.md +9 -3
- data/tracks/objective-c/exercises/run-length-encoding/README.md +12 -6
- data/tracks/objective-c/exercises/say/README.md +8 -2
- data/tracks/objective-c/exercises/scrabble-score/README.md +11 -3
- data/tracks/objective-c/exercises/secret-handshake/README.md +10 -4
- data/tracks/objective-c/exercises/sieve/README.md +8 -2
- data/tracks/objective-c/exercises/space-age/README.md +9 -3
- data/tracks/objective-c/exercises/sublist/README.md +7 -2
- data/tracks/objective-c/exercises/sum-of-multiples/README.md +11 -8
- data/tracks/objective-c/exercises/transpose/README.md +15 -9
- data/tracks/objective-c/exercises/triangle/README.md +17 -8
- data/tracks/objective-c/exercises/two-fer/README.md +8 -2
- data/tracks/objective-c/exercises/word-count/README.md +9 -4
- data/tracks/php/.travis.yml +1 -1
- data/tracks/php/config/exercise_readme.go.tmpl +20 -4
- data/tracks/php/exercises/accumulate/README.md +9 -6
- data/tracks/php/exercises/acronym/README.md +9 -4
- data/tracks/php/exercises/all-your-base/README.md +35 -11
- data/tracks/php/exercises/allergies/README.md +9 -4
- data/tracks/php/exercises/anagram/README.md +10 -4
- data/tracks/php/exercises/atbash-cipher/README.md +12 -5
- data/tracks/php/exercises/beer-song/README.md +12 -6
- data/tracks/php/exercises/binary-search/README.md +10 -4
- data/tracks/php/exercises/binary/README.md +12 -4
- data/tracks/php/exercises/bob/.meta/description.md +10 -0
- data/tracks/php/exercises/bob/README.md +10 -4
- data/tracks/php/exercises/book-store/README.md +15 -9
- data/tracks/php/exercises/bowling/README.md +30 -10
- data/tracks/php/exercises/bracket-push/README.md +10 -4
- data/tracks/php/exercises/change/README.md +11 -5
- data/tracks/php/exercises/clock/README.md +10 -4
- data/tracks/php/exercises/collatz-conjecture/README.md +10 -4
- data/tracks/php/exercises/connect/README.md +11 -6
- data/tracks/php/exercises/crypto-square/README.md +10 -4
- data/tracks/php/exercises/difference-of-squares/README.md +10 -4
- data/tracks/php/exercises/etl/README.md +13 -5
- data/tracks/php/exercises/flatten-array/README.md +10 -4
- data/tracks/php/exercises/gigasecond/README.md +10 -4
- data/tracks/php/exercises/grade-school/README.md +10 -5
- data/tracks/php/exercises/grains/README.md +10 -5
- data/tracks/php/exercises/hamming/README.md +10 -4
- data/tracks/php/exercises/hello-world/README.md +10 -4
- data/tracks/php/exercises/isogram/README.md +12 -5
- data/tracks/php/exercises/largest-series-product/README.md +10 -4
- data/tracks/php/exercises/leap/README.md +11 -5
- data/tracks/php/exercises/luhn/README.md +17 -11
- data/tracks/php/exercises/markdown/README.md +10 -5
- data/tracks/php/exercises/meetup/README.md +45 -12
- data/tracks/php/exercises/meetup/example.php +0 -2
- data/tracks/php/exercises/meetup/meetup_test.php +0 -2
- data/tracks/php/exercises/minesweeper/README.md +10 -5
- data/tracks/php/exercises/nth-prime/README.md +10 -4
- data/tracks/php/exercises/nucleotide-count/README.md +15 -23
- data/tracks/php/exercises/ocr-numbers/README.md +16 -10
- data/tracks/php/exercises/pangram/README.md +11 -5
- data/tracks/php/exercises/pascals-triangle/README.md +12 -6
- data/tracks/php/exercises/perfect-numbers/README.md +12 -6
- data/tracks/php/exercises/phone-number/README.md +14 -7
- data/tracks/php/exercises/pig-latin/README.md +10 -4
- data/tracks/php/exercises/prime-factors/README.md +10 -4
- data/tracks/php/exercises/queen-attack/README.md +11 -5
- data/tracks/php/exercises/rail-fence-cipher/README.md +10 -4
- data/tracks/php/exercises/raindrops/README.md +10 -4
- data/tracks/php/exercises/rna-transcription/README.md +11 -5
- data/tracks/php/exercises/robot-name/README.md +10 -4
- data/tracks/php/exercises/robot-simulator/README.md +10 -4
- data/tracks/php/exercises/roman-numerals/README.md +11 -5
- data/tracks/php/exercises/run-length-encoding/README.md +13 -4
- data/tracks/php/exercises/scrabble-score/README.md +13 -5
- data/tracks/php/exercises/series/README.md +27 -0
- data/tracks/php/exercises/series/example.php +0 -2
- data/tracks/php/exercises/series/series_test.php +0 -1
- data/tracks/php/exercises/sieve/README.md +10 -4
- data/tracks/php/exercises/space-age/README.md +11 -5
- data/tracks/php/exercises/sum-of-multiples/README.md +12 -9
- data/tracks/php/exercises/transpose/README.md +10 -4
- data/tracks/php/exercises/triangle/README.md +19 -10
- data/tracks/php/exercises/trinary/README.md +11 -5
- data/tracks/php/exercises/variable-length-quantity/README.md +16 -11
- data/tracks/php/exercises/word-count/README.md +10 -5
- data/tracks/php/exercises/wordy/README.md +9 -8
- data/tracks/rust/config/exercise_readme.go.tmpl +32 -4
- data/tracks/rust/exercises/all-your-base/README.md +0 -1
- data/tracks/rust/exercises/alphametics/README.md +0 -1
- data/tracks/rust/exercises/custom-set/README.md +0 -1
- data/tracks/rust/exercises/dominoes/README.md +0 -1
- data/tracks/rust/exercises/forth/README.md +0 -1
- data/tracks/rust/exercises/isbn-verifier/README.md +1 -1
- data/tracks/rust/exercises/minesweeper/README.md +0 -1
- data/tracks/rust/exercises/nucleotide-codons/README.md +0 -1
- data/tracks/rust/exercises/parallel-letter-frequency/README.md +0 -1
- data/tracks/rust/exercises/protein-translation/README.md +2 -2
- data/tracks/rust/exercises/react/README.md +0 -1
- data/tracks/rust/exercises/rectangles/README.md +0 -1
- data/tracks/rust/exercises/reverse-string/README.md +1 -1
- data/tracks/rust/exercises/rna-transcription/.meta/hints.md +9 -0
- data/tracks/rust/exercises/rna-transcription/README.md +12 -1
- data/tracks/rust/exercises/rna-transcription/example.rs +66 -27
- data/tracks/rust/exercises/rna-transcription/tests/rna-transcription.rs +52 -19
- data/tracks/rust/exercises/sublist/README.md +0 -1
- data/tracks/rust/exercises/tournament/README.md +0 -1
- data/tracks/swift/config/exercise_readme.go.tmpl +7 -4
- data/tracks/swift/exercises/accumulate/README.md +0 -3
- data/tracks/swift/exercises/acronym/README.md +0 -1
- data/tracks/swift/exercises/all-your-base/README.md +1 -2
- data/tracks/swift/exercises/allergies/README.md +0 -1
- data/tracks/swift/exercises/atbash-cipher/README.md +2 -1
- data/tracks/swift/exercises/beer-song/README.md +2 -2
- data/tracks/swift/exercises/binary/README.md +2 -0
- data/tracks/swift/exercises/bob/.meta/description.md +10 -0
- data/tracks/swift/exercises/bowling/README.md +20 -6
- data/tracks/swift/exercises/circular-buffer/README.md +21 -13
- data/tracks/swift/exercises/collatz-conjecture/README.md +1 -1
- data/tracks/swift/exercises/crypto-square/README.md +10 -8
- data/tracks/swift/exercises/custom-set/README.md +0 -1
- data/tracks/swift/exercises/diamond/README.md +3 -0
- data/tracks/swift/exercises/dominoes/README.md +3 -4
- data/tracks/swift/exercises/etl/README.md +3 -1
- data/tracks/swift/exercises/flatten-array/README.md +1 -2
- data/tracks/swift/exercises/food-chain/README.md +1 -1
- data/tracks/swift/exercises/grade-school/README.md +0 -1
- data/tracks/swift/exercises/grains/README.md +0 -1
- data/tracks/swift/exercises/house/README.md +2 -3
- data/tracks/swift/exercises/isbn-verifier/README.md +32 -16
- data/tracks/swift/exercises/isogram/README.md +2 -1
- data/tracks/swift/exercises/kindergarten-garden/README.md +13 -13
- data/tracks/swift/exercises/leap/README.md +1 -1
- data/tracks/swift/exercises/linked-list/README.md +10 -10
- data/tracks/swift/exercises/list-ops/README.md +1 -0
- data/tracks/swift/exercises/luhn/README.md +7 -7
- data/tracks/swift/exercises/matrix/README.md +6 -4
- data/tracks/swift/exercises/meetup/README.md +16 -13
- data/tracks/swift/exercises/minesweeper/README.md +0 -1
- data/tracks/swift/exercises/nucleotide-count/README.md +8 -22
- data/tracks/swift/exercises/ocr-numbers/README.md +6 -6
- data/tracks/swift/exercises/octal/README.md +6 -2
- data/tracks/swift/exercises/palindrome-products/README.md +15 -16
- data/tracks/swift/exercises/pangram/README.md +1 -1
- data/tracks/swift/exercises/pascals-triangle/README.md +2 -2
- data/tracks/swift/exercises/perfect-numbers/README.md +2 -2
- data/tracks/swift/exercises/phone-number/README.md +4 -3
- data/tracks/swift/exercises/protein-translation/README.md +4 -4
- data/tracks/swift/exercises/pythagorean-triplet/README.md +3 -3
- data/tracks/swift/exercises/queen-attack/README.md +1 -1
- data/tracks/swift/exercises/rna-transcription/README.md +2 -2
- data/tracks/swift/exercises/roman-numerals/README.md +1 -1
- data/tracks/swift/exercises/run-length-encoding/README.md +4 -4
- data/tracks/swift/exercises/saddle-points/README.md +2 -2
- data/tracks/swift/exercises/say/README.md +1 -1
- data/tracks/swift/exercises/scrabble-score/README.md +3 -1
- data/tracks/swift/exercises/secret-handshake/README.md +2 -2
- data/tracks/swift/exercises/simple-cipher/README.md +5 -7
- data/tracks/swift/exercises/space-age/README.md +1 -1
- data/tracks/swift/exercises/sublist/README.md +0 -1
- data/tracks/swift/exercises/sum-of-multiples/README.md +3 -6
- data/tracks/swift/exercises/tournament/README.md +5 -6
- data/tracks/swift/exercises/transpose/README.md +7 -7
- data/tracks/swift/exercises/triangle/README.md +9 -6
- data/tracks/swift/exercises/trinary/README.md +1 -1
- data/tracks/swift/exercises/twelve-days/README.md +1 -1
- data/tracks/swift/exercises/two-fer/README.md +2 -29
- data/tracks/swift/exercises/word-count/README.md +1 -2
- data/tracks/swift/exercises/wordy/README.md +0 -5
- metadata +12 -10
- data/tracks/cfml/tasks/exercise_template/.meta/HINTS.md +0 -0
- data/tracks/csharp/docs/EXERCISE_README_INSERT.md +0 -5
- data/tracks/go/docs/EXERCISE_README_INSERT.md +0 -16
- data/tracks/java/exercises/forth/.meta/readme.go.tmpl +0 -17
- data/tracks/objective-c/docs/EXERCISE_README_INSERT.md +0 -15
- data/tracks/php/docs/EXERCISE_README_INSERT.md +0 -13
- data/tracks/rust/config/exercise-readme-insert.md +0 -31
- data/tracks/swift/docs/EXERCISE_README_INSERT.md +0 -6
@@ -21,7 +21,6 @@ In the end, you should be able to:
|
|
21
21
|
Note that all our students only have one name. (It's a small town, what
|
22
22
|
do you want?)
|
23
23
|
|
24
|
-
|
25
24
|
## For bonus points
|
26
25
|
|
27
26
|
Did you get the tests passing and the code clean? If you want to, these
|
@@ -35,16 +34,22 @@ are some additional things you could try:
|
|
35
34
|
Then please share your thoughts in a comment on the submission. Did this
|
36
35
|
experiment make the code better? Worse? Did you learn anything from it?
|
37
36
|
|
38
|
-
## Making the Test Suite Pass
|
39
37
|
|
40
|
-
|
38
|
+
## Running the tests
|
39
|
+
|
40
|
+
1. Go to the root of your PHP exercise directory, which is `<EXERCISM_WORKSPACE>/php`.
|
41
|
+
To find the Exercism workspace run
|
42
|
+
|
43
|
+
% exercism debug | grep Workspace
|
44
|
+
|
45
|
+
1. Get [PHPUnit] if you don't have it already.
|
41
46
|
|
42
47
|
% wget --no-check-certificate https://phar.phpunit.de/phpunit.phar
|
43
48
|
% chmod +x phpunit.phar
|
44
49
|
|
45
|
-
2. Execute the tests
|
50
|
+
2. Execute the tests:
|
46
51
|
|
47
|
-
% phpunit.phar
|
52
|
+
% ./phpunit.phar grade-school/grade-school_test.php
|
48
53
|
|
49
54
|
[PHPUnit]: http://phpunit.de
|
50
55
|
|
@@ -15,7 +15,6 @@ Write code that shows:
|
|
15
15
|
- how many grains were on each square, and
|
16
16
|
- the total number of grains
|
17
17
|
|
18
|
-
|
19
18
|
## For bonus points
|
20
19
|
|
21
20
|
Did you get the tests passing and the code clean? If you want to, these
|
@@ -27,16 +26,22 @@ are some additional things you could try:
|
|
27
26
|
Then please share your thoughts in a comment on the submission. Did this
|
28
27
|
experiment make the code better? Worse? Did you learn anything from it?
|
29
28
|
|
30
|
-
## Making the Test Suite Pass
|
31
29
|
|
32
|
-
|
30
|
+
## Running the tests
|
31
|
+
|
32
|
+
1. Go to the root of your PHP exercise directory, which is `<EXERCISM_WORKSPACE>/php`.
|
33
|
+
To find the Exercism workspace run
|
34
|
+
|
35
|
+
% exercism debug | grep Workspace
|
36
|
+
|
37
|
+
1. Get [PHPUnit] if you don't have it already.
|
33
38
|
|
34
39
|
% wget --no-check-certificate https://phar.phpunit.de/phpunit.phar
|
35
40
|
% chmod +x phpunit.phar
|
36
41
|
|
37
|
-
2. Execute the tests
|
42
|
+
2. Execute the tests:
|
38
43
|
|
39
|
-
% phpunit.phar
|
44
|
+
% ./phpunit.phar grains/grains_test.php
|
40
45
|
|
41
46
|
[PHPUnit]: http://phpunit.de
|
42
47
|
|
@@ -35,16 +35,22 @@ The Hamming distance is only defined for sequences of equal length. This means
|
|
35
35
|
that based on the definition, each language could deal with getting sequences
|
36
36
|
of equal length differently.
|
37
37
|
|
38
|
-
## Making the Test Suite Pass
|
39
38
|
|
40
|
-
|
39
|
+
## Running the tests
|
40
|
+
|
41
|
+
1. Go to the root of your PHP exercise directory, which is `<EXERCISM_WORKSPACE>/php`.
|
42
|
+
To find the Exercism workspace run
|
43
|
+
|
44
|
+
% exercism debug | grep Workspace
|
45
|
+
|
46
|
+
1. Get [PHPUnit] if you don't have it already.
|
41
47
|
|
42
48
|
% wget --no-check-certificate https://phar.phpunit.de/phpunit.phar
|
43
49
|
% chmod +x phpunit.phar
|
44
50
|
|
45
|
-
2. Execute the tests
|
51
|
+
2. Execute the tests:
|
46
52
|
|
47
|
-
% phpunit.phar
|
53
|
+
% ./phpunit.phar hamming/hamming_test.php
|
48
54
|
|
49
55
|
[PHPUnit]: http://phpunit.de
|
50
56
|
|
@@ -14,16 +14,22 @@ The objectives are simple:
|
|
14
14
|
|
15
15
|
If everything goes well, you will be ready to fetch your first real exercise.
|
16
16
|
|
17
|
-
## Making the Test Suite Pass
|
18
17
|
|
19
|
-
|
18
|
+
## Running the tests
|
19
|
+
|
20
|
+
1. Go to the root of your PHP exercise directory, which is `<EXERCISM_WORKSPACE>/php`.
|
21
|
+
To find the Exercism workspace run
|
22
|
+
|
23
|
+
% exercism debug | grep Workspace
|
24
|
+
|
25
|
+
1. Get [PHPUnit] if you don't have it already.
|
20
26
|
|
21
27
|
% wget --no-check-certificate https://phar.phpunit.de/phpunit.phar
|
22
28
|
% chmod +x phpunit.phar
|
23
29
|
|
24
|
-
2. Execute the tests
|
30
|
+
2. Execute the tests:
|
25
31
|
|
26
|
-
% phpunit.phar
|
32
|
+
% ./phpunit.phar hello-world/hello-world_test.php
|
27
33
|
|
28
34
|
[PHPUnit]: http://phpunit.de
|
29
35
|
|
@@ -2,26 +2,33 @@
|
|
2
2
|
|
3
3
|
Determine if a word or phrase is an isogram.
|
4
4
|
|
5
|
-
An isogram (also known as a "nonpattern word") is a word or phrase without a repeating letter.
|
5
|
+
An isogram (also known as a "nonpattern word") is a word or phrase without a repeating letter, however spaces and hyphens are allowed to appear multiple times.
|
6
6
|
|
7
7
|
Examples of isograms:
|
8
8
|
|
9
9
|
- lumberjacks
|
10
10
|
- background
|
11
11
|
- downstream
|
12
|
+
- six-year-old
|
12
13
|
|
13
14
|
The word *isograms*, however, is not an isogram, because the s repeats.
|
14
15
|
|
15
|
-
## Making the Test Suite Pass
|
16
16
|
|
17
|
-
|
17
|
+
## Running the tests
|
18
|
+
|
19
|
+
1. Go to the root of your PHP exercise directory, which is `<EXERCISM_WORKSPACE>/php`.
|
20
|
+
To find the Exercism workspace run
|
21
|
+
|
22
|
+
% exercism debug | grep Workspace
|
23
|
+
|
24
|
+
1. Get [PHPUnit] if you don't have it already.
|
18
25
|
|
19
26
|
% wget --no-check-certificate https://phar.phpunit.de/phpunit.phar
|
20
27
|
% chmod +x phpunit.phar
|
21
28
|
|
22
|
-
2. Execute the tests
|
29
|
+
2. Execute the tests:
|
23
30
|
|
24
|
-
% phpunit.phar
|
31
|
+
% ./phpunit.phar isogram/isogram_test.php
|
25
32
|
|
26
33
|
[PHPUnit]: http://phpunit.de
|
27
34
|
|
@@ -13,16 +13,22 @@ in the input; the digits need not be *numerically consecutive*.
|
|
13
13
|
For the input `'73167176531330624919225119674426574742355349194934'`,
|
14
14
|
the largest product for a series of 6 digits is 23520.
|
15
15
|
|
16
|
-
## Making the Test Suite Pass
|
17
16
|
|
18
|
-
|
17
|
+
## Running the tests
|
18
|
+
|
19
|
+
1. Go to the root of your PHP exercise directory, which is `<EXERCISM_WORKSPACE>/php`.
|
20
|
+
To find the Exercism workspace run
|
21
|
+
|
22
|
+
% exercism debug | grep Workspace
|
23
|
+
|
24
|
+
1. Get [PHPUnit] if you don't have it already.
|
19
25
|
|
20
26
|
% wget --no-check-certificate https://phar.phpunit.de/phpunit.phar
|
21
27
|
% chmod +x phpunit.phar
|
22
28
|
|
23
|
-
2. Execute the tests
|
29
|
+
2. Execute the tests:
|
24
30
|
|
25
|
-
% phpunit.phar
|
31
|
+
% ./phpunit.phar largest-series-product/largest-series-product_test.php
|
26
32
|
|
27
33
|
[PHPUnit]: http://phpunit.de
|
28
34
|
|
@@ -4,7 +4,7 @@ Given a year, report if it is a leap year.
|
|
4
4
|
|
5
5
|
The tricky thing here is that a leap year in the Gregorian calendar occurs:
|
6
6
|
|
7
|
-
```
|
7
|
+
```text
|
8
8
|
on every year that is evenly divisible by 4
|
9
9
|
except every year that is evenly divisible by 100
|
10
10
|
unless the year is also evenly divisible by 400
|
@@ -26,16 +26,22 @@ phenomenon, go watch [this youtube video][video].
|
|
26
26
|
|
27
27
|
[video]: http://www.youtube.com/watch?v=xX96xng7sAE
|
28
28
|
|
29
|
-
## Making the Test Suite Pass
|
30
29
|
|
31
|
-
|
30
|
+
## Running the tests
|
31
|
+
|
32
|
+
1. Go to the root of your PHP exercise directory, which is `<EXERCISM_WORKSPACE>/php`.
|
33
|
+
To find the Exercism workspace run
|
34
|
+
|
35
|
+
% exercism debug | grep Workspace
|
36
|
+
|
37
|
+
1. Get [PHPUnit] if you don't have it already.
|
32
38
|
|
33
39
|
% wget --no-check-certificate https://phar.phpunit.de/phpunit.phar
|
34
40
|
% chmod +x phpunit.phar
|
35
41
|
|
36
|
-
2. Execute the tests
|
42
|
+
2. Execute the tests:
|
37
43
|
|
38
|
-
% phpunit.phar
|
44
|
+
% ./phpunit.phar leap/leap_test.php
|
39
45
|
|
40
46
|
[PHPUnit]: http://phpunit.de
|
41
47
|
|
@@ -18,27 +18,27 @@ are disallowed.
|
|
18
18
|
|
19
19
|
## Example 1: valid credit card number
|
20
20
|
|
21
|
-
```
|
21
|
+
```text
|
22
22
|
4539 1488 0343 6467
|
23
23
|
```
|
24
24
|
|
25
25
|
The first step of the Luhn algorithm is to double every second digit,
|
26
26
|
starting from the right. We will be doubling
|
27
27
|
|
28
|
-
```
|
28
|
+
```text
|
29
29
|
4_3_ 1_8_ 0_4_ 6_6_
|
30
30
|
```
|
31
31
|
|
32
32
|
If doubling the number results in a number greater than 9 then subtract 9
|
33
33
|
from the product. The results of our doubling:
|
34
34
|
|
35
|
-
```
|
35
|
+
```text
|
36
36
|
8569 2478 0383 3437
|
37
37
|
```
|
38
38
|
|
39
39
|
Then sum all of the digits:
|
40
40
|
|
41
|
-
```
|
41
|
+
```text
|
42
42
|
8+5+6+9+2+4+7+8+0+3+8+3+3+4+3+7 = 80
|
43
43
|
```
|
44
44
|
|
@@ -46,34 +46,40 @@ If the sum is evenly divisible by 10, then the number is valid. This number is v
|
|
46
46
|
|
47
47
|
## Example 2: invalid credit card number
|
48
48
|
|
49
|
-
```
|
49
|
+
```text
|
50
50
|
8273 1232 7352 0569
|
51
51
|
```
|
52
52
|
|
53
53
|
Double the second digits, starting from the right
|
54
54
|
|
55
|
-
```
|
55
|
+
```text
|
56
56
|
7253 2262 5312 0539
|
57
57
|
```
|
58
58
|
|
59
59
|
Sum the digits
|
60
60
|
|
61
|
-
```
|
61
|
+
```text
|
62
62
|
7+2+5+3+2+2+6+2+5+3+1+2+0+5+3+9 = 57
|
63
63
|
```
|
64
64
|
|
65
65
|
57 is not evenly divisible by 10, so this number is not valid.
|
66
66
|
|
67
|
-
## Making the Test Suite Pass
|
68
67
|
|
69
|
-
|
68
|
+
## Running the tests
|
69
|
+
|
70
|
+
1. Go to the root of your PHP exercise directory, which is `<EXERCISM_WORKSPACE>/php`.
|
71
|
+
To find the Exercism workspace run
|
72
|
+
|
73
|
+
% exercism debug | grep Workspace
|
74
|
+
|
75
|
+
1. Get [PHPUnit] if you don't have it already.
|
70
76
|
|
71
77
|
% wget --no-check-certificate https://phar.phpunit.de/phpunit.phar
|
72
78
|
% chmod +x phpunit.phar
|
73
79
|
|
74
|
-
2. Execute the tests
|
80
|
+
2. Execute the tests:
|
75
81
|
|
76
|
-
% phpunit.phar
|
82
|
+
% ./phpunit.phar luhn/luhn_test.php
|
77
83
|
|
78
84
|
[PHPUnit]: http://phpunit.de
|
79
85
|
|
@@ -14,20 +14,25 @@ It would be helpful if you made notes of what you did in your refactoring in
|
|
14
14
|
comments so reviewers can see that, but it isn't strictly necessary. The most
|
15
15
|
important thing is to make the code better!
|
16
16
|
|
17
|
-
## Making the Test Suite Pass
|
18
17
|
|
19
|
-
|
18
|
+
## Running the tests
|
19
|
+
|
20
|
+
1. Go to the root of your PHP exercise directory, which is `<EXERCISM_WORKSPACE>/php`.
|
21
|
+
To find the Exercism workspace run
|
22
|
+
|
23
|
+
% exercism debug | grep Workspace
|
24
|
+
|
25
|
+
1. Get [PHPUnit] if you don't have it already.
|
20
26
|
|
21
27
|
% wget --no-check-certificate https://phar.phpunit.de/phpunit.phar
|
22
28
|
% chmod +x phpunit.phar
|
23
29
|
|
24
|
-
2. Execute the tests
|
30
|
+
2. Execute the tests:
|
25
31
|
|
26
|
-
% phpunit.phar
|
32
|
+
% ./phpunit.phar markdown/markdown_test.php
|
27
33
|
|
28
34
|
[PHPUnit]: http://phpunit.de
|
29
35
|
|
30
36
|
|
31
|
-
|
32
37
|
## Submitting Incomplete Solutions
|
33
38
|
It's possible to submit an incomplete solution so you can see how others have completed the exercise.
|
@@ -1,21 +1,54 @@
|
|
1
|
+
# Meetup
|
2
|
+
|
1
3
|
Calculate the date of meetups.
|
2
4
|
|
3
|
-
Typically meetups happen on the same day of the week. In this exercise, you
|
4
|
-
a description of a meetup date, and return the actual meetup date.
|
5
|
+
Typically meetups happen on the same day of the week. In this exercise, you
|
6
|
+
will take a description of a meetup date, and return the actual meetup date.
|
5
7
|
|
6
8
|
Examples of general descriptions are:
|
7
9
|
|
8
|
-
-
|
9
|
-
-
|
10
|
-
-
|
11
|
-
-
|
10
|
+
- The first Monday of January 2017
|
11
|
+
- The third Tuesday of January 2017
|
12
|
+
- The wednesteenth of January 2017
|
13
|
+
- The last Thursday of January 2017
|
14
|
+
|
15
|
+
The descriptors you are expected to parse are:
|
16
|
+
first, second, third, fourth, fifth, last, monteenth, tuesteenth, wednesteenth,
|
17
|
+
thursteenth, friteenth, saturteenth, sunteenth
|
12
18
|
|
13
|
-
Note that "
|
14
|
-
|
15
|
-
end in '-teenth'. Therefore, one is guaranteed that each day of the week
|
19
|
+
Note that "monteenth", "tuesteenth", etc are all made up words. There was a
|
20
|
+
meetup whose members realized that there are exactly 7 numbered days in a month
|
21
|
+
that end in '-teenth'. Therefore, one is guaranteed that each day of the week
|
16
22
|
(Monday, Tuesday, ...) will have exactly one date that is named with '-teenth'
|
17
23
|
in every month.
|
18
24
|
|
19
|
-
Given examples of a meetup dates, each containing a month, day, year, and
|
20
|
-
|
21
|
-
|
25
|
+
Given examples of a meetup dates, each containing a month, day, year, and
|
26
|
+
descriptor calculate the date of the actual meetup. For example, if given
|
27
|
+
"The first Monday of January 2017", the correct meetup date is 2017/1/2.
|
28
|
+
|
29
|
+
|
30
|
+
## Running the tests
|
31
|
+
|
32
|
+
1. Go to the root of your PHP exercise directory, which is `<EXERCISM_WORKSPACE>/php`.
|
33
|
+
To find the Exercism workspace run
|
34
|
+
|
35
|
+
% exercism debug | grep Workspace
|
36
|
+
|
37
|
+
1. Get [PHPUnit] if you don't have it already.
|
38
|
+
|
39
|
+
% wget --no-check-certificate https://phar.phpunit.de/phpunit.phar
|
40
|
+
% chmod +x phpunit.phar
|
41
|
+
|
42
|
+
2. Execute the tests:
|
43
|
+
|
44
|
+
% ./phpunit.phar meetup/meetup_test.php
|
45
|
+
|
46
|
+
[PHPUnit]: http://phpunit.de
|
47
|
+
|
48
|
+
|
49
|
+
## Source
|
50
|
+
|
51
|
+
Jeremy Hinegardner mentioned a Boulder meetup that happens on the Wednesteenth of every month [https://twitter.com/copiousfreetime](https://twitter.com/copiousfreetime)
|
52
|
+
|
53
|
+
## Submitting Incomplete Solutions
|
54
|
+
It's possible to submit an incomplete solution so you can see how others have completed the exercise.
|
@@ -26,20 +26,25 @@ into this:
|
|
26
26
|
| 111 |
|
27
27
|
+-----+
|
28
28
|
|
29
|
-
## Making the Test Suite Pass
|
30
29
|
|
31
|
-
|
30
|
+
## Running the tests
|
31
|
+
|
32
|
+
1. Go to the root of your PHP exercise directory, which is `<EXERCISM_WORKSPACE>/php`.
|
33
|
+
To find the Exercism workspace run
|
34
|
+
|
35
|
+
% exercism debug | grep Workspace
|
36
|
+
|
37
|
+
1. Get [PHPUnit] if you don't have it already.
|
32
38
|
|
33
39
|
% wget --no-check-certificate https://phar.phpunit.de/phpunit.phar
|
34
40
|
% chmod +x phpunit.phar
|
35
41
|
|
36
|
-
2. Execute the tests
|
42
|
+
2. Execute the tests:
|
37
43
|
|
38
|
-
% phpunit.phar
|
44
|
+
% ./phpunit.phar minesweeper/minesweeper_test.php
|
39
45
|
|
40
46
|
[PHPUnit]: http://phpunit.de
|
41
47
|
|
42
48
|
|
43
|
-
|
44
49
|
## Submitting Incomplete Solutions
|
45
50
|
It's possible to submit an incomplete solution so you can see how others have completed the exercise.
|