diff options
| author | drbaggy <js5@sanger.ac.uk> | 2021-05-18 22:19:52 +0100 |
|---|---|---|
| committer | drbaggy <js5@sanger.ac.uk> | 2021-05-18 22:19:52 +0100 |
| commit | d8828a6cfbadb2f453508a4390777534ab4e5dca (patch) | |
| tree | 777df3bd09f6988996d50aeefe21bd757cf57041 /challenge-113/stuart-little/node/ch-1.js | |
| parent | acf7efe3c26276e986c039273f2df7179de5ab24 (diff) | |
| parent | 28e8ae0a51e27c2435ca1e8fc16f4eea32a78b05 (diff) | |
| download | perlweeklychallenge-club-d8828a6cfbadb2f453508a4390777534ab4e5dca.tar.gz perlweeklychallenge-club-d8828a6cfbadb2f453508a4390777534ab4e5dca.tar.bz2 perlweeklychallenge-club-d8828a6cfbadb2f453508a4390777534ab4e5dca.zip | |
Merge remote-tracking branch 'upstream/master'
Diffstat (limited to 'challenge-113/stuart-little/node/ch-1.js')
| -rwxr-xr-x | challenge-113/stuart-little/node/ch-1.js | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/challenge-113/stuart-little/node/ch-1.js b/challenge-113/stuart-little/node/ch-1.js new file mode 100755 index 0000000000..319423ece6 --- /dev/null +++ b/challenge-113/stuart-little/node/ch-1.js @@ -0,0 +1,20 @@ +#!/usr/bin/env node + +// run <script> <digit> + +function lastDigSumm(nr, dig, nrSummands) { + return ((nr - nrSummands * dig) % 10 == 0) && (nrSummands * dig <= nr) && (nrSummands * ((dig -1) * 10 + dig) >= nr) +} + +function lastDig(nr,dig) { + return [...Array(9)].map((_,i) => i+1).filter(x => lastDigSumm(nr,dig,x)).length >= 1 +} + +function sol(nr,dig) { + if (dig == 0) { + return (nr >= 101 || (nr % 10 == 0)) + } + return ((nr >= dig * 11) || lastDig(nr,dig)) +} + +console.log(sol(...process.argv.slice(2).map(x => parseInt(x))) ? 1 : 0) |
