aboutsummaryrefslogtreecommitdiff
path: root/challenge-113/abigail/node
diff options
context:
space:
mode:
authorAbigail <abigail@abigail.be>2021-05-19 19:28:01 +0200
committerAbigail <abigail@abigail.be>2021-05-19 19:28:01 +0200
commit98f821f841409373f067e0ed04629090a08ebb1f (patch)
tree4bf84e4224a6bd306742c9c60d2c612ec4bc09b7 /challenge-113/abigail/node
parent23b2fd7bb31c97cd99ae62dc522a7607fcc2a297 (diff)
downloadperlweeklychallenge-club-98f821f841409373f067e0ed04629090a08ebb1f.tar.gz
perlweeklychallenge-club-98f821f841409373f067e0ed04629090a08ebb1f.tar.bz2
perlweeklychallenge-club-98f821f841409373f067e0ed04629090a08ebb1f.zip
Node.js solution for week 113
Diffstat (limited to 'challenge-113/abigail/node')
-rw-r--r--challenge-113/abigail/node/ch-1.js30
-rw-r--r--challenge-113/abigail/node/ch-2.js17
2 files changed, 47 insertions, 0 deletions
diff --git a/challenge-113/abigail/node/ch-1.js b/challenge-113/abigail/node/ch-1.js
new file mode 100644
index 0000000000..2ca4f6a0e1
--- /dev/null
+++ b/challenge-113/abigail/node/ch-1.js
@@ -0,0 +1,30 @@
+#!/usr/local/bin/node
+
+//
+// See ../README.md
+//
+
+//
+// Run as: node ch-1.js < input-file
+//
+
+let tens = [0, 0, 1, 2, 1, 0, 2, 6, 3, 8];
+
+require ('readline')
+. createInterface ({input: process . stdin})
+. on ('line', _ => {
+ let [N, D] = _ . split (/\s+/) . map (_ => +_)
+ let D10 = D == 0 ? 100 : 10 * D
+ if (N >= D10 || (N % (D == 0 ? 10 : D) == 0)) {
+ console . log (1)
+ return
+ }
+ for (let i = 1; i <= tens [D]; i ++) {
+ let T = N - 10 * i - D
+ if (T >= 0 && T % D == 0) {
+ console . log (1)
+ return
+ }
+ }
+ console . log (0)
+})
diff --git a/challenge-113/abigail/node/ch-2.js b/challenge-113/abigail/node/ch-2.js
new file mode 100644
index 0000000000..606e95d09d
--- /dev/null
+++ b/challenge-113/abigail/node/ch-2.js
@@ -0,0 +1,17 @@
+#!/usr/local/bin/node
+
+//
+// See ../README.md
+//
+
+//
+// Run as: node ch-2.js < input-file
+//
+
+require ('readline')
+. createInterface ({input: process . stdin})
+. on ('line', _ => {
+ let numbers = _ . split (/\s+/) . map (_ => +_)
+ let sum = numbers . reduce ((acc, val) => acc + val)
+ console . log (numbers . map (_ => sum - _) . join (" "))
+})