diff options
| -rw-r--r-- | challenge-230/cheok-yin-fung/perl/ch-1.pl | 15 | ||||
| -rw-r--r-- | challenge-230/cheok-yin-fung/perl/ch-2.pl | 14 |
2 files changed, 29 insertions, 0 deletions
diff --git a/challenge-230/cheok-yin-fung/perl/ch-1.pl b/challenge-230/cheok-yin-fung/perl/ch-1.pl new file mode 100644 index 0000000000..dfc937c2d0 --- /dev/null +++ b/challenge-230/cheok-yin-fung/perl/ch-1.pl @@ -0,0 +1,15 @@ +# The Weekly Challenge 230 +# Task 1 Separate Digits +use v5.30.0; +use warnings; + +sub sd { + my @ints = @_; + my @ans = map {split "", 0+$_} @ints; + return [@ans]; +} + +use Test::More tests=>2; +use Test::Deep; +cmp_deeply sd(1, 34, 5, 6), [1,3,4,5,6]; +cmp_deeply sd(1, 24, 51, 60), [1, 2, 4, 5, 1, 6, 0]; diff --git a/challenge-230/cheok-yin-fung/perl/ch-2.pl b/challenge-230/cheok-yin-fung/perl/ch-2.pl new file mode 100644 index 0000000000..04ccde807c --- /dev/null +++ b/challenge-230/cheok-yin-fung/perl/ch-2.pl @@ -0,0 +1,14 @@ +# The Weekly Challenge 230 +# Task 2 Count Words +use v5.30.0; +use warnings; + +sub cw { + my @words = $_[0]->@*; + my $prefix = $_[1]; + my $ans = map { $_ =~ /^$prefix/} @words; +} + +use Test::More tests=>2; +ok cw(["pay", "attention", "practice", "attend"], "at") == 2; +ok cw(["janet", "julia", "java", "javascript"], "ja") == 3; |
