From 2c2d463c2eaea9d6bba26e3fcc4be2ad48a29c21 Mon Sep 17 00:00:00 2001 From: Mark <53903062+andemark@users.noreply.github.com> Date: Mon, 22 Jan 2024 08:23:35 +0000 Subject: Challenge 253 Solutions (Raku) --- challenge-253/mark-anderson/raku/ch-1.raku | 13 ++++++++++++ challenge-253/mark-anderson/raku/ch-2.raku | 33 ++++++++++++++++++++++++++++++ 2 files changed, 46 insertions(+) create mode 100644 challenge-253/mark-anderson/raku/ch-1.raku create mode 100644 challenge-253/mark-anderson/raku/ch-2.raku diff --git a/challenge-253/mark-anderson/raku/ch-1.raku b/challenge-253/mark-anderson/raku/ch-1.raku new file mode 100644 index 0000000000..0b4b73fcde --- /dev/null +++ b/challenge-253/mark-anderson/raku/ch-1.raku @@ -0,0 +1,13 @@ +#!/usr/bin/env raku +use Test; + +is-deeply split-strings(, '.'), + ; + +is-deeply split-strings(<$perl$$ $$raku$>, '$'), + ; + +sub split-strings(@a, $separator) +{ + flat @a>>.split($separator, :skip-empty) +} diff --git a/challenge-253/mark-anderson/raku/ch-2.raku b/challenge-253/mark-anderson/raku/ch-2.raku new file mode 100644 index 0000000000..1a581b0901 --- /dev/null +++ b/challenge-253/mark-anderson/raku/ch-2.raku @@ -0,0 +1,33 @@ +#!/usr/bin/env raku +use Test; + +is-deeply weakest-rows([ + [1, 1, 0, 0, 0], + [1, 1, 1, 1, 0], + [1, 0, 0, 0, 0], + [1, 1, 0, 0, 0], + [1, 1, 1, 1, 1] + ]), + (2, 0, 3, 1, 4); + +is-deeply weakest-rows([ + [1, 0, 0, 0], + [1, 1, 1, 1], + [1, 0, 0, 0], + [1, 0, 0, 0] + ]), + (0, 2, 3, 1); + +is-deeply weakest-rows([ + [1, 1, 0, 0, 0], + [1, 1, 1, 1, 0], + [0, 0, 0, 0, 0], + [1, 1, 0, 0, 0], + [1, 1, 1, 1, 1] + ]), + (2, 0, 3, 1, 4); + +sub weakest-rows($m) +{ + $m.map({ .first(0, :k) // ∞ }).antipairs.sort>>.value +} -- cgit