From fe82251da122437cc4cbc4d5fc14023611ffca68 Mon Sep 17 00:00:00 2001 From: deadmarshal Date: Mon, 29 Jan 2024 00:06:56 -0500 Subject: TWC253 --- challenge-253/deadmarshal/blog.txt | 1 + challenge-253/deadmarshal/perl/ch1.pl | 13 +++++++++++++ challenge-253/deadmarshal/perl/ch2.pl | 22 ++++++++++++++++++++++ 3 files changed, 36 insertions(+) create mode 100644 challenge-253/deadmarshal/blog.txt create mode 100644 challenge-253/deadmarshal/perl/ch1.pl create mode 100644 challenge-253/deadmarshal/perl/ch2.pl diff --git a/challenge-253/deadmarshal/blog.txt b/challenge-253/deadmarshal/blog.txt new file mode 100644 index 0000000000..9f134f1c36 --- /dev/null +++ b/challenge-253/deadmarshal/blog.txt @@ -0,0 +1 @@ +https://deadmarshal.blogspot.com/2024/01/twc253.html diff --git a/challenge-253/deadmarshal/perl/ch1.pl b/challenge-253/deadmarshal/perl/ch1.pl new file mode 100644 index 0000000000..2d4c293fb3 --- /dev/null +++ b/challenge-253/deadmarshal/perl/ch1.pl @@ -0,0 +1,13 @@ +#!/usr/bin/env perl +use strict; +use warnings; +use Data::Show; + +sub split_strings{ + my ($arr,$sep) = @_; + grep {length} map{split /\Q$sep\E/} @$arr +} + +print show split_strings(['one.two.three','four.five','six'],'.'); +print show split_strings(['$perl$$', '$$raku$'],'$'); + diff --git a/challenge-253/deadmarshal/perl/ch2.pl b/challenge-253/deadmarshal/perl/ch2.pl new file mode 100644 index 0000000000..768ea21785 --- /dev/null +++ b/challenge-253/deadmarshal/perl/ch2.pl @@ -0,0 +1,22 @@ +#!/usr/bin/env perl +use strict; +use warnings; +use Data::Show; +use List::Util qw(sum0); + +sub weakest_row{ + my ($mat) = @_; + sort{sum0(@{$$mat[$a]}) <=> sum0(@{$$mat[$b]}) || $a <=> $b} + 0..$#$mat +} + +print show weakest_row([[1,1,0,0,0], + [1,1,1,1,0], + [1,0,0,0,0], + [1,1,0,0,0], + [1,1,1,1,1]]); +print show weakest_row([[1,0,0,0], + [1,1,1,1], + [1,0,0,0], + [1,0,0,0]]); + -- cgit