aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuca Ferrari <fluca1978@gmail.com>2023-02-13 10:45:02 +0100
committerLuca Ferrari <fluca1978@gmail.com>2023-02-13 10:51:29 +0100
commit52cbb7bad49711e2900a2dbc2b2c014f7dc30276 (patch)
tree74d005ac2e855b3a92a904ec279916f10d5055fb
parent77997b6e85b2142b057108c0c2fd01dfb8aac90e (diff)
downloadperlweeklychallenge-club-52cbb7bad49711e2900a2dbc2b2c014f7dc30276.tar.gz
perlweeklychallenge-club-52cbb7bad49711e2900a2dbc2b2c014f7dc30276.tar.bz2
perlweeklychallenge-club-52cbb7bad49711e2900a2dbc2b2c014f7dc30276.zip
Task 2 done
-rw-r--r--challenge-204/luca-ferrari/raku/ch-2.p632
1 files changed, 32 insertions, 0 deletions
diff --git a/challenge-204/luca-ferrari/raku/ch-2.p6 b/challenge-204/luca-ferrari/raku/ch-2.p6
new file mode 100644
index 0000000000..652ef3e1ec
--- /dev/null
+++ b/challenge-204/luca-ferrari/raku/ch-2.p6
@@ -0,0 +1,32 @@
+#!raku
+
+#
+# Perl Weekly Challenge 204
+# Task 2
+#
+# See <https://perlweeklychallenge.org/blog/perl-weekly-challenge-204/>
+#
+
+# raku raku/ch-2.p6 -r=3 -c=2 "1 2 3" "4 5 6"
+# [[1 2] [3 4] [5 6]]
+
+sub MAIN( Int :$r, Int :$c, *@matrix ) {
+ my @M = @matrix.map: { $_.split( ' ' ) };
+
+ # if cannot reshape, exit
+ '0'.say and exit if ( $r * $c ) < ( @M.elems * @M[ 0 ].elems );
+
+ my @N;
+ my @new-row;
+ for @M -> $row {
+
+ for 0 ..^ $row.elems {
+ @new-row.push: $row[ $_ ] if ( @new-row.elems < $c );
+ @N.push: [ @new-row ] if ( @new-row.elems == $c );
+ @new-row = () if ( @new-row.elems == $c );
+
+ }
+ }
+v
+ @N.join( "\n" ).say;
+}