aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authork-mx <cppfero@gmail.com>2019-05-02 11:49:17 +0500
committerk-mx <cppfero@gmail.com>2019-05-02 13:35:00 +0500
commitdeae72c45b317c9c99566cddc40c59ba1032b073 (patch)
treec7482ff85fddbd3f42a9b911d0c63cad36b770b5
parent4705a3f20e864be01e4cf82fa944abe644631ae8 (diff)
downloadperlweeklychallenge-club-deae72c45b317c9c99566cddc40c59ba1032b073.tar.gz
perlweeklychallenge-club-deae72c45b317c9c99566cddc40c59ba1032b073.tar.bz2
perlweeklychallenge-club-deae72c45b317c9c99566cddc40c59ba1032b073.zip
ch-1.pl solution by Maxim Kolodyazhny
-rw-r--r--challenge-006/maxim-kolodyazhny/perl5/ch-1.pl18
1 files changed, 18 insertions, 0 deletions
diff --git a/challenge-006/maxim-kolodyazhny/perl5/ch-1.pl b/challenge-006/maxim-kolodyazhny/perl5/ch-1.pl
new file mode 100644
index 0000000000..5ac290fdd0
--- /dev/null
+++ b/challenge-006/maxim-kolodyazhny/perl5/ch-1.pl
@@ -0,0 +1,18 @@
+#!/usr/bin/env perl -p
+
+# echo 1,2,3,4,42,43,45 | ch-1.pl
+
+use 5.028.1;
+use List::Util qw(sum);
+
+s{
+ (\b \d+)
+ (,?\d+,)+
+ (\d+ \b)
+ (??{
+ # this block is treated as a pattern
+ # != will return '' (always match) or 1 (fail because of previous \b)
+ ($3-$1+1)*($1+$3)/2 != sum split ',', $&;
+ })
+}
+{$1-$3}xg;