diff options
| author | Luca Ferrari <fluca1978@gmail.com> | 2023-02-13 10:45:02 +0100 |
|---|---|---|
| committer | Luca Ferrari <fluca1978@gmail.com> | 2023-02-13 10:51:29 +0100 |
| commit | 52cbb7bad49711e2900a2dbc2b2c014f7dc30276 (patch) | |
| tree | 74d005ac2e855b3a92a904ec279916f10d5055fb | |
| parent | 77997b6e85b2142b057108c0c2fd01dfb8aac90e (diff) | |
| download | perlweeklychallenge-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.p6 | 32 |
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; +} |
