From 643223e879e682c91994f5ad7b773a2c86a1ab92 Mon Sep 17 00:00:00 2001 From: 冯昶 Date: Wed, 21 Dec 2022 10:57:52 +0800 Subject: challenge 196, raku solutions --- challenge-196/feng-chang/raku/ch-1.raku | 5 +++++ challenge-196/feng-chang/raku/ch-2.raku | 13 +++++++++++++ 2 files changed, 18 insertions(+) create mode 100755 challenge-196/feng-chang/raku/ch-1.raku create mode 100755 challenge-196/feng-chang/raku/ch-2.raku diff --git a/challenge-196/feng-chang/raku/ch-1.raku b/challenge-196/feng-chang/raku/ch-1.raku new file mode 100755 index 0000000000..92209a5f0d --- /dev/null +++ b/challenge-196/feng-chang/raku/ch-1.raku @@ -0,0 +1,5 @@ +#!/bin/env raku + +unit sub MAIN(*@N); + +put @N[(^+@N X ^+@N X ^+@N).grep({ .[0] < .[1] < .[2] }).first({ @N[.[0]] < @N[.[2]] < @N[.[1]] }) // []].gist; diff --git a/challenge-196/feng-chang/raku/ch-2.raku b/challenge-196/feng-chang/raku/ch-2.raku new file mode 100755 index 0000000000..f05e4a3e78 --- /dev/null +++ b/challenge-196/feng-chang/raku/ch-2.raku @@ -0,0 +1,13 @@ +#!/bin/env raku + +unit sub MAIN(*@N); + +@N = @N».Int; +my @ndx = (^+@N X ^+@N) + .grep({ .[0] < .[1] }) + .grep({ + all(@N[.[0]]..@N[.[1]]) (elem) @N and + (.[0] == 0 or .[0] > 0 and @N[.[0]]-1 !(elem) @N) and + (.[1] == +@N-1 or .[1] < +@N-1 and @N[.[1]]+1 !(elem) @N) + }); +put @ndx.map({ "[{@N[.[0]]},{@N[.[1]]}]" }).join(', '); -- cgit