aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xchallenge-211/feng-chang/raku/ch-1.raku16
-rwxr-xr-xchallenge-211/feng-chang/raku/ch-2.raku5
-rw-r--r--challenge-211/feng-chang/raku/in02.txt2
-rw-r--r--challenge-211/feng-chang/raku/input.txt3
4 files changed, 26 insertions, 0 deletions
diff --git a/challenge-211/feng-chang/raku/ch-1.raku b/challenge-211/feng-chang/raku/ch-1.raku
new file mode 100755
index 0000000000..318cf8c481
--- /dev/null
+++ b/challenge-211/feng-chang/raku/ch-1.raku
@@ -0,0 +1,16 @@
+#!/bin/env raku
+
+unit sub MAIN(Str:D $f where *.IO.e = 'input.txt');
+
+my @N = $f.IO.lines.map({ .words».Int.Array }).Array;
+my $rows = +@N;
+my $cols = +@N[0];
+
+my %groups;
+for ^$rows -> $r {
+ for ^$cols -> $c {
+ %groups{$c-$r}.push([$r, $c]);
+ }
+}
+
+put +so %groups.keys.map({ [==] %groups{$_}.map({ @N[.[0];.[1]] }) }).all;
diff --git a/challenge-211/feng-chang/raku/ch-2.raku b/challenge-211/feng-chang/raku/ch-2.raku
new file mode 100755
index 0000000000..0b69977d3a
--- /dev/null
+++ b/challenge-211/feng-chang/raku/ch-2.raku
@@ -0,0 +1,5 @@
+#!/bin/env raku
+
+unit sub MAIN(*@N);
+
+put +so @N.combinations».sum.any == @N.sum / 2;
diff --git a/challenge-211/feng-chang/raku/in02.txt b/challenge-211/feng-chang/raku/in02.txt
new file mode 100644
index 0000000000..9f389471e8
--- /dev/null
+++ b/challenge-211/feng-chang/raku/in02.txt
@@ -0,0 +1,2 @@
+1 2 3
+3 2 1
diff --git a/challenge-211/feng-chang/raku/input.txt b/challenge-211/feng-chang/raku/input.txt
new file mode 100644
index 0000000000..92be5d2071
--- /dev/null
+++ b/challenge-211/feng-chang/raku/input.txt
@@ -0,0 +1,3 @@
+4 3 2 1
+5 4 3 2
+6 5 4 3