From b63b58f5f19fb499ae3941ce25791913c5e67ee9 Mon Sep 17 00:00:00 2001 From: Polgár Márton Date: Tue, 3 May 2022 09:58:52 +0200 Subject: Weekly solutions (2colours) --- challenge-163/2colours/raku/ch-1.raku | 4 ++++ challenge-163/2colours/raku/ch-2.raku | 13 +++++++++++++ 2 files changed, 17 insertions(+) create mode 100755 challenge-163/2colours/raku/ch-1.raku create mode 100755 challenge-163/2colours/raku/ch-2.raku diff --git a/challenge-163/2colours/raku/ch-1.raku b/challenge-163/2colours/raku/ch-1.raku new file mode 100755 index 0000000000..86cae3b6e4 --- /dev/null +++ b/challenge-163/2colours/raku/ch-1.raku @@ -0,0 +1,4 @@ +#!/usr/bin/env raku + +my @n = prompt('Input: @n = ') ~~ m:g/\d+/; +say "Output: {@n.combinations(2).map({ [+&] $_ }).sum}"; \ No newline at end of file diff --git a/challenge-163/2colours/raku/ch-2.raku b/challenge-163/2colours/raku/ch-2.raku new file mode 100755 index 0000000000..751d81b4bd --- /dev/null +++ b/challenge-163/2colours/raku/ch-2.raku @@ -0,0 +1,13 @@ +#!/usr/bin/env raku + +sub align-right($caption, $length) { + ' ' x ($length - $caption.chars) ~ $caption +} + +my @n = prompt('Input: @n = ').comb(/\d+/)>>.Int; +my @lines = @n, { [\+] .skip andthen .Array } ... * == 1; +for @lines { + .unshift(|('' xx (@n - $_))) +} +my @col-length = [Zmax] @lines>>.chars; +.say for @lines.map(*.List Z[&align-right] @col-length).map(*.join: ' '); \ No newline at end of file -- cgit