diff options
| author | Niels van Dijke <perlboy@cpan.org> | 2021-09-20 13:20:31 +0000 |
|---|---|---|
| committer | Niels van Dijke <perlboy@cpan.org> | 2021-09-20 13:20:31 +0000 |
| commit | fea463e901ad3491593903cf666be4eae1b7e623 (patch) | |
| tree | 590f9e222bc6a5fc8be50e42386f93f37f712394 | |
| parent | 018f2ba457a040f64ae1f3a0ad42a8629dadb792 (diff) | |
| download | perlweeklychallenge-club-fea463e901ad3491593903cf666be4eae1b7e623.tar.gz perlweeklychallenge-club-fea463e901ad3491593903cf666be4eae1b7e623.tar.bz2 perlweeklychallenge-club-fea463e901ad3491593903cf666be4eae1b7e623.zip | |
Task 1
| -rw-r--r-- | challenge-131/perlboy1967/perl/ch-1.pl | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/challenge-131/perlboy1967/perl/ch-1.pl b/challenge-131/perlboy1967/perl/ch-1.pl new file mode 100644 index 0000000000..05558a8351 --- /dev/null +++ b/challenge-131/perlboy1967/perl/ch-1.pl @@ -0,0 +1,43 @@ +#!/usr/bin/perl + +# Perl Weekly Challenge - 131 +# - https://perlweeklychallenge.org/blog/perl-weekly-challenge-131/#TASK1 +# +# Task 1 - Consecutive Arrays +# +# Author: Niels 'PerlBoy' van Dijke + +use v5.16; +use strict; +use warnings; + +use List::MoreUtils qw(slide); + +use Test::More; +use Test::Deep; + + +cmp_deeply(consecutiveArrays(1,2,3,6,7,8,9), [[1,2,3],[6,7,8,9]]); +cmp_deeply(consecutiveArrays(11,12,14,17,18,19), [[11,12],[14],[17,18,19]]); +cmp_deeply(consecutiveArrays(2,4,6,8), [[2],[4],[6],[8]]); +cmp_deeply(consecutiveArrays(1,2,3,4,5), [[1,2,3,4,5]]); + +done_testing; + + +sub consecutiveArrays { + + my @r = ([]); + + slide { + push(@{$r[-1]}, $a); + if ($a != $b - 1) { + push(@r, []); + } + } @_; + + push(@{$r[-1]}, $_[-1]); + + return [@r]; +} + |
