diff options
| author | Mohammad S Anwar <mohammad.anwar@yahoo.com> | 2024-02-18 21:05:48 +0000 |
|---|---|---|
| committer | Mohammad S Anwar <mohammad.anwar@yahoo.com> | 2024-02-18 21:05:48 +0000 |
| commit | 71c25e55bc7d4e6adaaad7659e88853b71009526 (patch) | |
| tree | 79c7d302584fd600d1d03175af24f632a718a561 | |
| parent | d9fab837345a062450ec4cb134e38481314cf056 (diff) | |
| download | perlweeklychallenge-club-71c25e55bc7d4e6adaaad7659e88853b71009526.tar.gz perlweeklychallenge-club-71c25e55bc7d4e6adaaad7659e88853b71009526.tar.bz2 perlweeklychallenge-club-71c25e55bc7d4e6adaaad7659e88853b71009526.zip | |
- Added solutions by Wanderdoc.
| -rwxr-xr-x | challenge-256/wanderdoc/perl/ch-1.pl | 37 | ||||
| -rwxr-xr-x | challenge-256/wanderdoc/perl/ch-2.pl | 36 | ||||
| -rw-r--r-- | stats/pwc-current.json | 279 | ||||
| -rw-r--r-- | stats/pwc-language-breakdown-summary.json | 52 | ||||
| -rw-r--r-- | stats/pwc-language-breakdown.json | 1720 | ||||
| -rw-r--r-- | stats/pwc-leaders.json | 750 | ||||
| -rw-r--r-- | stats/pwc-summary-1-30.json | 116 | ||||
| -rw-r--r-- | stats/pwc-summary-121-150.json | 50 | ||||
| -rw-r--r-- | stats/pwc-summary-151-180.json | 46 | ||||
| -rw-r--r-- | stats/pwc-summary-181-210.json | 102 | ||||
| -rw-r--r-- | stats/pwc-summary-211-240.json | 48 | ||||
| -rw-r--r-- | stats/pwc-summary-241-270.json | 52 | ||||
| -rw-r--r-- | stats/pwc-summary-271-300.json | 116 | ||||
| -rw-r--r-- | stats/pwc-summary-301-330.json | 36 | ||||
| -rw-r--r-- | stats/pwc-summary-31-60.json | 100 | ||||
| -rw-r--r-- | stats/pwc-summary-61-90.json | 30 | ||||
| -rw-r--r-- | stats/pwc-summary-91-120.json | 110 | ||||
| -rw-r--r-- | stats/pwc-summary.json | 52 |
18 files changed, 1910 insertions, 1822 deletions
diff --git a/challenge-256/wanderdoc/perl/ch-1.pl b/challenge-256/wanderdoc/perl/ch-1.pl new file mode 100755 index 0000000000..d442ee1fad --- /dev/null +++ b/challenge-256/wanderdoc/perl/ch-1.pl @@ -0,0 +1,37 @@ +#!perl
+use strict;
+use warnings FATAL => qw(all);
+
+=prompt
+You are given a array of distinct words, @words. Write a script to find the maximum pairs in the given array. The words $words[i] and $words[j] can be a pair one is reverse of the other.
+Example 1 Input: @words = ("ab", "de", "ed", "bc") Output: 1
+There is one pair in the given array: "de" and "ed"
+Example 2 Input: @words = ("aa", "ba", "cd", "ed") Output: 0
+Example 3 Input: @words = ("uv", "qp", "st", "vu", "mn", "pq")) Output: 2
+=cut
+
+
+
+
+
+use List::Util qw(sum);
+use Test2::V0;
+
+sub max_pairs
+{
+ my @arr = @_;
+ my %counter;
+ for my $idx ( 0 .. $#arr )
+ {
+ my $elm = $arr[$idx];
+ my $rev = reverse $elm;
+ next if exists $counter{$elm};
+ do { $counter{$elm}++ if /$rev/} for @arr[$idx + 1 .. $#arr];
+ }
+ return values %counter ? sum(values %counter) : 0;
+}
+
+is(max_pairs("ab", "de", "ed", "bc"), 1, 'Example 1');
+is(max_pairs("aa", "ba", "cd", "ed"), 0, 'Example 2');
+is(max_pairs("uv", "qp", "st", "vu", "mn", "pq"), 2, 'Example 3');
+done_testing();
diff --git a/challenge-256/wanderdoc/perl/ch-2.pl b/challenge-256/wanderdoc/perl/ch-2.pl new file mode 100755 index 0000000000..0af0e1d1ff --- /dev/null +++ b/challenge-256/wanderdoc/perl/ch-2.pl @@ -0,0 +1,36 @@ +#!perl
+use strict;
+use warnings FATAL => qw(all);
+
+=prompt
+You are given two strings, $str1 and $str2. Write a script to merge the given strings by adding in alternative order starting with the first string. If a string is longer than the other then append the remaining at the end.
+Example 1 Input: $str1 = "abcd", $str2 = "1234" Output: "a1b2c3d4"
+Example 2 Input: $str1 = "abc", $str2 = "12345" Output: "a1b2c345"
+Example 3 Input: $str1 = "abcde", $str2 = "123" Output: "a1b2c3de"
+=cut
+
+
+
+
+
+
+
+
+use List::MoreUtils qw(mesh);
+use Test2::V0;
+
+sub merge_strings
+{
+ return join('',
+ grep defined,
+ mesh(
+ @{[split(//,$_[0])]},
+ @{[split(//,$_[1])]}
+ )
+ );
+}
+
+is(merge_strings("abcd", "1234"), "a1b2c3d4", "Example 1");
+is(merge_strings("abc", "12345"), "a1b2c345", "Example 2");
+is(merge_strings("abcde", "123"), "a1b2c3de", "Example 3");
+done_testing();
diff --git a/stats/pwc-current.json b/stats/pwc-current.json index f795a009e6..43fb218d00 100644 --- a/stats/pwc-current.json +++ b/stats/pwc-current.json @@ -1,36 +1,12 @@ { - "chart" : { - "type" : "column" - }, - "tooltip" : { - "followPointer" : 1, - "headerFormat" : "<span style='font-size:11px'>{series.name}</span><br/>", - "pointFormat" : "<span style='color:{point.color}'>{point.name}</span>: <b>{point.y:f}</b><br/>" - }, "yAxis" : { "title" : { "text" : "Total Solutions" } }, - "legend" : { - "enabled" : 0 - }, - "title" : { - "text" : "The Weekly Challenge - 256" - }, - "plotOptions" : { - "series" : { - "borderWidth" : 0, - "dataLabels" : { - "enabled" : 1, - "format" : "{point.y}" - } - } - }, "drilldown" : { "series" : [ { - "name" : "Ali Moradi", "id" : "Ali Moradi", "data" : [ [ @@ -41,21 +17,22 @@ "Blog", 1 ] - ] + ], + "name" : "Ali Moradi" }, { + "name" : "Andrew Shitov", "data" : [ [ "Raku", 2 ] ], - "name" : "Andrew Shitov", "id" : "Andrew Shitov" }, { - "name" : "Arne Sommer", "id" : "Arne Sommer", + "name" : "Arne Sommer", "data" : [ [ "Raku", @@ -78,50 +55,51 @@ 2 ] ], - "id" : "Athanasius", - "name" : "Athanasius" + "name" : "Athanasius", + "id" : "Athanasius" }, { + "name" : "Bruce Gray", "data" : [ [ "Raku", 2 ] ], - "name" : "Bruce Gray", "id" : "Bruce Gray" }, { "name" : "Cheok-Yin Fung", - "id" : "Cheok-Yin Fung", "data" : [ [ "Perl", 2 ] - ] + ], + "id" : "Cheok-Yin Fung" }, { "id" : "David Ferrone", - "name" : "David Ferrone", "data" : [ [ "Perl", 2 ] - ] + ], + "name" : "David Ferrone" }, { + "id" : "E. Choroba", + "name" : "E. Choroba", "data" : [ [ "Perl", 2 ] - ], - "id" : "E. Choroba", - "name" : "E. Choroba" + ] }, { + "id" : "Jaldhar H. Vyas", "data" : [ [ "Perl", @@ -136,18 +114,17 @@ 1 ] ], - "id" : "Jaldhar H. Vyas", "name" : "Jaldhar H. Vyas" }, { + "id" : "Jan Krnavek", "data" : [ [ "Raku", 2 ] ], - "name" : "Jan Krnavek", - "id" : "Jan Krnavek" + "name" : "Jan Krnavek" }, { "data" : [ @@ -160,10 +137,11 @@ 1 ] ], - "id" : "Jorg Sommrey", - "name" : "Jorg Sommrey" + "name" : "Jorg Sommrey", + "id" : "Jorg Sommrey" }, { + "name" : "Laurent Rosenfeld", "data" : [ [ "Perl", @@ -178,8 +156,7 @@ 2 ] ], - "id" : "Laurent Rosenfeld", - "name" : "Laurent Rosenfeld" + "id" : "Laurent Rosenfeld" }, { "data" : [ @@ -192,12 +169,10 @@ 2 ] ], - "id" : "Lubos Kolouch", - "name" : "Lubos Kolouch" + "name" : "Lubos Kolouch", + "id" : "Lubos Kolouch" }, { - "name" : "Luca Ferrari", - "id" : "Luca Ferrari", "data" : [ [ "Raku", @@ -207,31 +182,33 @@ "Blog", 9 ] - ] + ], + "name" : "Luca Ferrari", + "id" : "Luca Ferrari" }, { + "name" : "Mariano Spadaccini", "data" : [ [ "Perl", 2 ] ], - "id" : "Mariano Spadaccini", - "name" : "Mariano Spadaccini" + "id" : "Mariano Spadaccini" }, { + "id" : "Mark Anderson", "data" : [ [ "Raku", 2 ] ], - "id" : "Mark Anderson", "name" : "Mark Anderson" }, { - "name" : "Matthew Neleigh", "id" : "Matthew Neleigh", + "name" : "Matthew Neleigh", "data" : [ [ "Perl", @@ -240,8 +217,8 @@ ] }, { - "name" : "Matthias Muth", "id" : "Matthias Muth", + "name" : "Matthias Muth", "data" : [ [ "Perl", @@ -255,27 +232,25 @@ }, { "id" : "Nelo Tovar", - "name" : "Nelo Tovar", "data" : [ [ "Perl", 2 ] - ] + ], + "name" : "Nelo Tovar" }, { + "id" : "Niels van Dijke", "data" : [ [ "Perl", 2 ] ], - "id" : "Niels van Dijke", "name" : "Niels van Dijke" }, { - "id" : "Packy Anderson", - "name" : "Packy Anderson", "data" : [ [ "Perl", @@ -289,7 +264,9 @@ "Blog", 1 ] - ] + ], + "name" : "Packy Anderson", + "id" : "Packy Anderson" }, { "data" : [ @@ -302,12 +279,12 @@ 1 ] ], - "id" : "Peter Campbell Smith", - "name" : "Peter Campbell Smith" + "name" : "Peter Campbell Smith", + "id" : "Peter Campbell Smith" }, { - "name" : "Peter Meszaros", "id" : "Peter Meszaros", + "name" : "Peter Meszaros", "data" : [ [ "Perl", @@ -330,8 +307,6 @@ "id" : "Robbie Hatley" }, { - "id" : "Roger Bell_West", - "name" : "Roger Bell_West", "data" : [ [ "Perl", @@ -345,9 +320,13 @@ "Blog", 1 ] - ] + ], + "name" : "Roger Bell_West", + "id" : "Roger Bell_West" }, { + "id" : "Simon Green", + "name" : "Simon Green", "data" : [ [ "Perl", @@ -357,9 +336,7 @@ "Blog", 1 ] - ], - "id" : "Simon Green", - "name" : "Simon Green" + ] }, { "id" : "Stephen G. Lynn", @@ -376,6 +353,7 @@ ] }, { + "id" : "Thomas Kohler", "data" : [ [ "Perl", @@ -386,12 +364,10 @@ 2 ] ], - "name" : "Thomas Kohler", - "id" : "Thomas Kohler" + "name" : "Thomas Kohler" }, { "id" : "Ulrich Rieke", - "name" : "Ulrich Rieke", "data" : [ [ "Perl", @@ -401,11 +377,11 @@ "Raku", 2 ] - ] + ], + "name" : "Ulrich Rieke" }, { "name" : "W. Luis Mochan", - "id" : "W. Luis Mochan", "data" : [ [ "Perl", @@ -415,79 +391,83 @@ "Blog", 1 ] - ] + ], + "id" : "W. Luis Mochan" + }, + { + "data" : [ + [ + "Perl", + 2 + ] + ], + "name" : "Wanderdoc", + "id" : "Wanderdoc" } ] }, - "xAxis" : { - "type" : "category" - }, - "subtitle" : { - "text" : "[Champions: 30] Last updated at 2024-02-18 19:25:04 GMT" - }, "series" : [ { - "colorByPoint" : 1, "data" : [ { - "y" : 3, + "name" : "Ali Moradi", "drilldown" : "Ali Moradi", - "name" : "Ali Moradi" + "y" : 3 }, { - "name" : "Andrew Shitov", + "y" : 2, "drilldown" : "Andrew Shitov", - "y" : 2 + "name" : "Andrew Shitov" }, { - "name" : "Arne Sommer", "y" : 3, - "drilldown" : "Arne Sommer" + "drilldown" : "Arne Sommer", + "name" : "Arne Sommer" }, { "name" : "Athanasius", - "drilldown" : "Athanasius", - "y" : 4 + "y" : 4, + "drilldown" : "Athanasius" }, { - "drilldown" : "Bruce Gray", "y" : 2, + "drilldown" : "Bruce Gray", "name" : "Bruce Gray" }, { "name" : "Cheok-Yin Fung", - "drilldown" : "Cheok-Yin Fung", - "y" : 2 + "y" : 2, + "drilldown" : "Cheok-Yin Fung" }, { - "drilldown" : "David Ferrone", + "name" : "David Ferrone", "y" : 2, - "name" : "David Ferrone" + "drilldown" : "David Ferrone" }, { - "name" : "E. Choroba", "drilldown" : "E. Choroba", - "y" : 2 + "y" : 2, + "name" : "E. Choroba" }, { "name" : "Jaldhar H. Vyas", - "drilldown" : "Jaldhar H. Vyas", - "y" : 5 + "y" : 5, + "drilldown" : "Jaldhar H. Vyas" }, { - "name" : "Jan Krnavek", + "drilldown" : "Jan Krnavek", "y" : 2, - "drilldown" : "Jan Krnavek" + "name" : "Jan Krnavek" }, { - "name" : "Jorg Sommrey", + "y" : 3, "drilldown" : "Jorg Sommrey", - "y" : 3 + "name" : "Jorg Sommrey" }, { "name" : "Laurent Rosenfeld", - "drilldown" : "Laurent Rosenfeld", - "y" : 6 + "y" : 6, + "drilldown" : "Laurent Rosenfeld" }, { "y" : 4, @@ -495,14 +475,14 @@ "name" : "Lubos Kolouch" }, { - "y" : 11, + "name" : "Luca Ferrari", "drilldown" : "Luca Ferrari", - "name" : "Luca Ferrari" + "y" : 11 }, { + "name" : "Mariano Spadaccini", "y" : 2, - "drilldown" : "Mariano Spadaccini", - "name" : "Mariano Spadaccini" + "drilldown" : "Mariano Spadaccini" }, { "drilldown" : "Mark Anderson", @@ -510,53 +490,53 @@ "name" : "Mark Anderson" }, { + "name" : "Matthew Neleigh", "y" : 2, - "drilldown" : "Matthew Neleigh", - "name" : "Matthew Neleigh" + "drilldown" : "Matthew Neleigh" }, { - "y" : 3, + "name" : "Matthias Muth", "drilldown" : "Matthias Muth", - "name" : "Matthias Muth" + "y" : 3 }, { - "name" : "Nelo Tovar", "y" : 2, - "drilldown" : "Nelo Tovar" + "drilldown" : "Nelo Tovar", + "name" : "Nelo Tovar" }, { - "name" : "Niels van Dijke", + "y" : 2, "drilldown" : "Niels van Dijke", - "y" : 2 + "name" : "Niels van Dijke" }, { - "drilldown" : "Packy Anderson", "y" : 5, + "drilldown" : "Packy Anderson", "name" : "Packy Anderson" }, { - "y" : 3, "drilldown" : "Peter Campbell Smith", + "y" : 3, "name" : "Peter Campbell Smith" }, { - "name" : "Peter Meszaros", + "drilldown" : "Peter Meszaros", "y" : 2, - "drilldown" : "Peter Meszaros" + "name" : "Peter Meszaros" }, { - "y" : 3, "drilldown" : "Robbie Hatley", + "y" : 3, "name" : "Robbie Hatley" }, { "name" : "Roger Bell_West", - "y" : 5, - "drilldown" : "Roger Bell_West" + "drilldown" : "Roger Bell_West", + "y" : 5 }, { - "drilldown" : "Simon Green", "y" : 3, + "drilldown" : "Simon Green", "name" : "Simon Green" }, { @@ -566,21 +546,56 @@ }, { "name" : "Thomas Kohler", - "drilldown" : "Thomas Kohler", - "y" : 4 + "y" : 4, + "drilldown" : "Thomas Kohler" }, { - "drilldown" : "Ulrich Rieke", "y" : 4, + "drilldown" : "Ulrich Rieke", "name" : "Ulrich Rieke" }, { - "name" : "W. Luis Mochan", "y" : 3, - "drilldown" : "W. Luis Mochan" + "drilldown" : "W. Luis Mochan", + "name" : "W. Luis Mochan" + }, + { + "drilldown" : "Wanderdoc", + "y" : 2, + "name" : "Wanderdoc" } ], - "name" : "The Weekly Challenge - 256" + "name" : "The Weekly Challenge - 256", + "colorByPoint" : 1 + } + ], + "subtitle" : { + "text" : "[Champions: 31] Last updated at 2024-02-18 21:00:01 GMT" + }, + "chart" : { + "type" : "column" + }, + "tooltip" : { + "pointFormat" : "<span style='color:{point.color}'>{point.name}</span>: <b>{point.y:f}</b><br/>", + "followPointer" : 1, + "headerFormat" : "<span style='font-size:11px'>{series.name}</span><br/>" + }, + "title" : { + "text" : "The Weekly Challenge - 256" + }, + "legend" : { + "enabled" : 0 + }, + "xAxis" : { + "type" : "category" + }, + "plotOptions" : { + "series" : { + "dataLabels" : { + "enabled" : 1, + "format" : "{point.y}" + }, + "borderWidth" : 0 } - ] + } } diff --git a/stats/pwc-language-breakdown-summary.json b/stats/pwc-language-breakdown-summary.json index 0da9b039f7..df66299d6b 100644 --- a/stats/pwc-language-breakdown-summary.json +++ b/stats/pwc-language-breakdown-summary.json @@ -3,16 +3,31 @@ "type" : "category", "labels" : { "style" : { - "fontFamily" : "Verdana, sans-serif", - "fontSize" : "13px" + "fontSize" : "13px", + "fontFamily" : "Verdana, sans-serif" } } }, - "subtitle" : { - "text" : "Last updated at 2024-02-18 19:25:04 GMT" + "yAxis" : { + "title" : { + "text" : null + }, + "min" : 0 }, "series" : [ { + "dataLabels" : { + "y" : 10, + "align" : "right", + "color" : "#FFFFFF", + "rotation" : -90, + "enabled" : "true", + "format" : "{point.y:.0f}", + "style" : { + "fontFamily" : "Verdana, sans-serif", + "fontSize" : "13px" + } + }, "name" : "Contributions", "data" : [ [ @@ -21,38 +36,23 @@ ], [ "Perl", - 13238 + 13240 ], [ "Raku", 7641 ] - ], - "dataLabels" : { - "enabled" : "true", - "align" : "right", - "color" : "#FFFFFF", - "format" : "{point.y:.0f}", - "style" : { - "fontSize" : "13px", - "fontFamily" : "Verdana, sans-serif" - }, - "rotation" : -90, - "y" : 10 - } + ] } ], - "tooltip" : { - "pointFormat" : "<b>{point.y:.0f}</b>" - }, "chart" : { "type" : "column" }, - "yAxis" : { - "title" : { - "text" : null - }, - "min" : 0 + "subtitle" : { + "text" : "Last updated at 2024-02-18 21:00:01 GMT" + }, + "tooltip" : { + "pointFormat" : "<b>{point.y:.0f}</b>" }, "title" : { "text" : "The Weekly Challenge Contributions [2019 - 2024]" diff --git a/stats/pwc-language-breakdown.json b/stats/pwc-language-breakdown.json index f1d7c345c8..2cc37e00fd 100644 --- a/stats/pwc-language-breakdown.json +++ b/stats/pwc-language-breakdown.json @@ -1,10 +1,4 @@ { - "xAxis" : { - "type" : "category" - }, - "subtitle" : { - "text" : "Click the columns to drilldown the language breakdown. Last updated at 2024-02-18 19:25:04 GMT" - }, "series" : [ { "colorByPoint" : "true", @@ -15,9 +9,9 @@ "y" : 164 }, { - "drilldown" : "002", + "name" : "#002", "y" : 129, - "name" : "#002" + "drilldown" : "002" }, { "name" : "#003", @@ -25,14 +19,14 @@ "drilldown" : "003" }, { - "name" : "#004", + "y" : 103, "drilldown" : "004", - "y" : 103 + "name" : "#004" }, { - "name" : "#005", + "drilldown" : "005", "y" : 80, - "drilldown" : "005" + "name" : "#005" }, { "name" : "#006", @@ -45,19 +39,19 @@ "drilldown" : "007" }, { + "name" : "#008", "drilldown" : "008", - "y" : 82, - "name" : "#008" + "y" : 82 }, { - "name" : "#009", "drilldown" : "009", - "y" : 80 + "y" : 80, + "name" : "#009" }, { - "name" : "#010", "y" : 69, - "drilldown" : "010" + "drilldown" : "010", + "name" : "#010" }, { "name" : "#011", @@ -66,8 +60,8 @@ }, { "name" : "#012", - "drilldown" : "012", - "y" : 92 + "y" : 92, + "drilldown" : "012" }, { "drilldown" : "013", @@ -86,18 +80,18 @@ }, { "name" : "#016", - "y" : 75, - "drilldown" : "016" + "drilldown" : "016", + "y" : 75 }, { - "name" : "#017", + "drilldown" : "017", "y" : 86, - "drilldown" : "017" + "name" : "#017" }, { - "name" : "#018", + "y" : 83, "drilldown" : "018", - "y" : 83 + "name" : "#018" }, { "y" : 105, @@ -105,39 +99,39 @@ "name" : "#019" }, { - "y" : 103, "drilldown" : "020", + "y" : 103, "name" : "#020" }, { + "name" : "#021", "drilldown" : "021", - "y" : 74, - "name" : "#021" + "y" : 74 }, { - "name" : "#022", + "y" : 72, "drilldown" : "022", - "y" : 72 + "name" : "#022" }, { + "name" : "#023", "drilldown" : "023", - "y" : 101, - "name" : "#023" + "y" : 101 }, { - "y" : 77, "drilldown" : "024", + "y" : 77, "name" : "#024" }, { - "drilldown" : "025", + "name" : "#025", "y" : 62, - "name" : "#025" + "drilldown" : "025" }, { - "name" : "#026", + "y" : 76, "drilldown" : "026", - "y" : 76 + "name" : "#026" }, { "name" : "#027", @@ -145,34 +139,34 @@ "drilldown" : "027" }, { + "name" : "#028", "y" : 82, - "drilldown" : "028", - "name" : "#028" + "drilldown" : "028" }, { - "name" : "#029", + "drilldown" : "029", "y" : 83, - "drilldown" : "029" + "name" : "#029" }, { + "name" : "#030", "y" : 121, - "drilldown" : "030", - "name" : "#030" + "drilldown" : "030" }, { + "name" : "#031", "y" : 93, - "drilldown" : "031", - "name" : "#031" + "drilldown" : "031" }, { - "name" : "#032", + "drilldown" : "032", "y" : 98, - "drilldown" : "032" + "name" : "#032" }, { + "name" : "#033", "drilldown" : "033", - "y" : 114, - "name" : "#033" + "y" : 114 }, { "name" : "#034", @@ -181,38 +175,38 @@ }, { "name" : "#035", - "drilldown" : "035", - "y" : 68 + "y" : 68, + "drilldown" : "035" }, { + "name" : "#036", "drilldown" : "036", - "y" : 70, - "name" : "#036" + "y" : 70 }, { - "y" : 70, + "name" : "#037", "dril |
