diff options
| author | Abigail <abigail@abigail.be> | 2021-11-17 16:09:09 +0100 |
|---|---|---|
| committer | Abigail <abigail@abigail.be> | 2021-11-17 19:20:28 +0100 |
| commit | 62167a58d3c55a71f37815381c858fad45825a8d (patch) | |
| tree | c2dab46599fc720673c6f1b4c8378c00e99dfeb2 /challenge-139/abigail/node | |
| parent | 83b91177f7b1aced78863b336bd236a40f7e1aef (diff) | |
| download | perlweeklychallenge-club-62167a58d3c55a71f37815381c858fad45825a8d.tar.gz perlweeklychallenge-club-62167a58d3c55a71f37815381c858fad45825a8d.tar.bz2 perlweeklychallenge-club-62167a58d3c55a71f37815381c858fad45825a8d.zip | |
Solutions for week 139
Diffstat (limited to 'challenge-139/abigail/node')
| -rw-r--r-- | challenge-139/abigail/node/ch-1.js | 20 | ||||
| -rw-r--r-- | challenge-139/abigail/node/ch-2.js | 37 |
2 files changed, 57 insertions, 0 deletions
diff --git a/challenge-139/abigail/node/ch-1.js b/challenge-139/abigail/node/ch-1.js new file mode 100644 index 0000000000..f45be6188c --- /dev/null +++ b/challenge-139/abigail/node/ch-1.js @@ -0,0 +1,20 @@ +#!/usr/local/bin/node + +// +// See ../README.md +// + +// +// Run as: node ch-1.js < input-file +// + + require ('readline') +. createInterface ({input: process . stdin}) +. on ('line', line => { + console . log (line . match (/[0-9]+/gi) . reduce ((sorted, _, i, list) => { + if (i > 0 && list [i - 1] > list [i]) {sorted = 0} + return sorted}, + 1) + ) +}) + diff --git a/challenge-139/abigail/node/ch-2.js b/challenge-139/abigail/node/ch-2.js new file mode 100644 index 0000000000..88f78d7b99 --- /dev/null +++ b/challenge-139/abigail/node/ch-2.js @@ -0,0 +1,37 @@ +#!/usr/local/bin/node + +// +// See ../README.md +// + +// +// Run as: node ch-2.js +// + +let BASE = 10 +let COUNT = 5 + +function is_long (number) { + let seen = Array (number) . fill (0) + let rest = 0 + for (let i = 2; i <= number; i ++) { + rest = (rest * BASE + BASE - 1) % number + if (seen [rest] == 1) { + return 0 + } + seen [rest] = 1 + } + return 1 +} + +let number = 1 +while (COUNT > 0) { + number ++ + if (BASE % number == 0) { + continue + } + if (is_long (number)) { + console . log (number) + COUNT -- + } +} |
