diff options
| author | Mohammad S Anwar <mohammad.anwar@yahoo.com> | 2024-01-10 17:10:02 +0000 |
|---|---|---|
| committer | Mohammad S Anwar <mohammad.anwar@yahoo.com> | 2024-01-10 17:10:02 +0000 |
| commit | 6e26b5e5f2133daa14b7ee59adef9a8977b523fe (patch) | |
| tree | 265651ef7e77e8d71b3da4ac722a0c1eb349329e | |
| parent | b32c0ef48b233fc2b7dbe00b4ab67cdc5d5e23ce (diff) | |
| download | perlweeklychallenge-club-6e26b5e5f2133daa14b7ee59adef9a8977b523fe.tar.gz perlweeklychallenge-club-6e26b5e5f2133daa14b7ee59adef9a8977b523fe.tar.bz2 perlweeklychallenge-club-6e26b5e5f2133daa14b7ee59adef9a8977b523fe.zip | |
- Added solutions by Matthew Neleigh.
- Added solutions by Laurent Rosenfeld.
- Added solutions by Stephen G Lynn.
- Added solutions by Roger Bell_West.
| -rw-r--r-- | challenge-251/laurent-rosenfeld/blog1.txt | 1 | ||||
| -rw-r--r-- | challenge-251/laurent-rosenfeld/perl/ch-2.pl | 39 | ||||
| -rw-r--r-- | challenge-251/laurent-rosenfeld/raku/ch-2.raku | 21 | ||||
| -rw-r--r-- | stats/pwc-current.json | 195 | ||||
| -rw-r--r-- | stats/pwc-language-breakdown-summary.json | 62 | ||||
| -rw-r--r-- | stats/pwc-language-breakdown.json | 1612 | ||||
| -rw-r--r-- | stats/pwc-leaders.json | 770 | ||||
| -rw-r--r-- | stats/pwc-summary-1-30.json | 40 | ||||
| -rw-r--r-- | stats/pwc-summary-121-150.json | 28 | ||||
| -rw-r--r-- | stats/pwc-summary-151-180.json | 102 | ||||
| -rw-r--r-- | stats/pwc-summary-181-210.json | 48 | ||||
| -rw-r--r-- | stats/pwc-summary-211-240.json | 90 | ||||
| -rw-r--r-- | stats/pwc-summary-241-270.json | 58 | ||||
| -rw-r--r-- | stats/pwc-summary-271-300.json | 52 | ||||
| -rw-r--r-- | stats/pwc-summary-301-330.json | 38 | ||||
| -rw-r--r-- | stats/pwc-summary-31-60.json | 104 | ||||
| -rw-r--r-- | stats/pwc-summary-61-90.json | 104 | ||||
| -rw-r--r-- | stats/pwc-summary-91-120.json | 112 | ||||
| -rw-r--r-- | stats/pwc-summary.json | 52 |
19 files changed, 1821 insertions, 1707 deletions
diff --git a/challenge-251/laurent-rosenfeld/blog1.txt b/challenge-251/laurent-rosenfeld/blog1.txt new file mode 100644 index 0000000000..46722e7536 --- /dev/null +++ b/challenge-251/laurent-rosenfeld/blog1.txt @@ -0,0 +1 @@ +https://blogs.perl.org/users/laurent_r/2024/01/perl-weekly-challenge-251-lucky-number.html diff --git a/challenge-251/laurent-rosenfeld/perl/ch-2.pl b/challenge-251/laurent-rosenfeld/perl/ch-2.pl new file mode 100644 index 0000000000..c9b51361a6 --- /dev/null +++ b/challenge-251/laurent-rosenfeld/perl/ch-2.pl @@ -0,0 +1,39 @@ +use strict; +use warnings; +use feature 'say'; + +sub min { + my @in = @_; + my $min = $in[0]; + my $min_i = 0; + for my $i (0..$#in) { + if ($in[$i] < $min) { + $min_i = $i; + $min = $in[$i]; + } + } + return $min_i; +} + +sub lucky_number { + my @in = @_; + ROW_LABEL: + for my $row (0..$#in) { + my $min_i = min @{$in[$row]}; + my $min_val = $in[$row][$min_i]; + for my $i (0..$#in) { + next ROW_LABEL if $in[$i][$min_i] > $min_val; + } + return $min_val; + } + return -1 +} + +for my $test ( [ [<3 7 8>], [<9 11 13>], [<15 16 17>] ], + [ [<1 10 4 2>], [<9 3 8 7>], [<15 16 17 12>] ], + [ [<7 8>], [<1 2>] ]) { + + my @gist = map { " [@$_]" } @$test; + printf "%-40s => ", "@gist "; + say lucky_number @$test; +} diff --git a/challenge-251/laurent-rosenfeld/raku/ch-2.raku b/challenge-251/laurent-rosenfeld/raku/ch-2.raku new file mode 100644 index 0000000000..60f1c9935f --- /dev/null +++ b/challenge-251/laurent-rosenfeld/raku/ch-2.raku @@ -0,0 +1,21 @@ +sub lucky-number (@in) { + ROW-LABEL: + for 0..@in.end -> $row { + my $min_i = min(0..@in[$row].end, :by( {@in[$row][$_] })); + my $min_val = @in[$row][$min_i]; + for 0..@in.end -> $i { + next ROW-LABEL if @in[$i][$min_i] > $min_val; + } + return $min_val; + } + return -1 +} + + +for ( <3 7 8>, <9 11 13>, <15 16 17>), + ( <1 10 4 2>, <9 3 8 7>, <15 16 17 12>), + ( <7 8>, <1 2> ) -> @test { + + printf "%-40s => ", @test.gist; + say lucky-number @test; +} diff --git a/stats/pwc-current.json b/stats/pwc-current.json index b6efbdf649..940fdb2f26 100644 --- a/stats/pwc-current.json +++ b/stats/pwc-current.json @@ -1,10 +1,10 @@ { - "title" : { - "text" : "The Weekly Challenge - 251" + "legend" : { + "enabled" : 0 }, "series" : [ { - "name" : "The Weekly Challenge - 251", + "colorByPoint" : 1, "data" : [ { "name" : "Arne Sommer", @@ -12,14 +12,14 @@ "y" : 3 }, { - "name" : "Dave Jacoby", "drilldown" : "Dave Jacoby", + "name" : "Dave Jacoby", "y" : 3 }, { + "y" : 2, "drilldown" : "David Ferrone", - "name" : "David Ferrone", - "y" : 2 + "name" : "David Ferrone" }, { "drilldown" : "E. Choroba", @@ -27,19 +27,24 @@ "y" : 2 }, { + "y" : 6, "drilldown" : "Laurent Rosenfeld", - "name" : "Laurent Rosenfeld", - "y" : 3 + "name" : "Laurent Rosenfeld" }, { + "y" : 10, "name" : "Luca Ferrari", - "drilldown" : "Luca Ferrari", - "y" : 10 + "drilldown" : "Luca Ferrari" }, { - "y" : 2, "name" : "Mark Anderson", - "drilldown" : "Mark Anderson" + "drilldown" : "Mark Anderson", + "y" : 2 + }, + { + "name" : "Matthew Neleigh", + "drilldown" : "Matthew Neleigh", + "y" : 2 }, { "name" : "Niels van Dijke", @@ -47,29 +52,39 @@ "y" : 2 }, { - "drilldown" : "Peter Campbell Smith", "name" : "Peter Campbell Smith", + "drilldown" : "Peter Campbell Smith", "y" : 3 }, { "y" : 2, - "drilldown" : "Peter Meszaros", - "name" : "Peter Meszaros" + "name" : "Peter Meszaros", + "drilldown" : "Peter Meszaros" }, { - "name" : "Robbie Hatley", "drilldown" : "Robbie Hatley", + "name" : "Robbie Hatley", "y" : 3 }, { + "name" : "Roger Bell_West", + "drilldown" : "Roger Bell_West", + "y" : 4 + }, + { "y" : 2, "name" : "Simon Proctor", "drilldown" : "Simon Proctor" }, { - "drilldown" : "Thomas Kohler", + "y" : 3, + "name" : "Stephen G. Lynn", + "drilldown" : "Stephen G. Lynn" + }, + { + "y" : 4, "name" : "Thomas Kohler", - "y" : 4 + "drilldown" : "Thomas Kohler" }, { "y" : 4, @@ -82,39 +97,31 @@ "name" : "W. Luis Mochan" } ], - "colorByPoint" : 1 + "name" : "The Weekly Challenge - 251" } ], - "chart" : { - "type" : "column" + "title" : { + "text" : "The Weekly Challenge - 251" }, - "xAxis" : { - "type" : "category" + "tooltip" : { + "pointFormat" : "<span style='color:{point.color}'>{point.name}</span>: <b>{point.y:f}</b><br/>", + "headerFormat" : "<span style='font-size:11px'>{series.name}</span><br/>", + "followPointer" : 1 }, - "subtitle" : { - "text" : "[Champions: 15] Last updated at 2024-01-09 22:29:40 GMT" + "chart" : { + "type" : "column" }, "yAxis" : { "title" : { "text" : "Total Solutions" } }, - "legend" : { - "enabled" : 0 - }, - "plotOptions" : { - "series" : { - "borderWidth" : 0, - "dataLabels" : { - "enabled" : 1, - "format" : "{point.y}" - } - } + "xAxis" : { + "type" : "category" }, "drilldown" : { "series" : [ { - "name" : "Arne Sommer", "id" : "Arne Sommer", "data" : [ [ @@ -125,11 +132,11 @@ "Blog", 1 ] - ] + ], + "name" : "Arne Sommer" }, { "id" : "Dave Jacoby", - "name" : "Dave Jacoby", "data" : [ [ "Perl", @@ -139,48 +146,48 @@ "Blog", 1 ] - ] + ], + "name" : "Dave Jacoby" }, { - "name" : "David Ferrone", - "id" : "David Ferrone", "data" : [ [ "Perl", 2 ] - ] + ], + "name" : "David Ferrone", + "id" : "David Ferrone" }, { + "name" : "E. Choroba", "data" : [ [ "Perl", 2 ] ], - "id" : "E. Choroba", - "name" : "E. Choroba" + "id" : "E. Choroba" }, { + "id" : "Laurent Rosenfeld", "data" : [ [ "Perl", - 1 + 2 ], [ "Raku", - 1 + 2 ], [ "Blog", - 1 + 2 ] ], - "id" : "Laurent Rosenfeld", "name" : "Laurent Rosenfeld" }, { - "id" : "Luca Ferrari", "name" : "Luca Ferrari", "data" : [ [ @@ -191,30 +198,40 @@ "Blog", 8 ] - ] + ], + "id" : "Luca Ferrari" }, { + "id" : "Mark Anderson", + "name" : "Mark Anderson", "data" : [ [ "Raku", 2 ] + ] + }, + { + "id" : "Matthew Neleigh", + "data" : [ + [ + "Perl", + 2 + ] ], - "id" : "Mark Anderson", - "name" : "Mark Anderson" + "name" : "Matthew Neleigh" }, { - "id" : "Niels van Dijke", - "name" : "Niels van Dijke", "data" : [ [ "Perl", 2 ] - ] + ], + "name" : "Niels van Dijke", + "id" : "Niels van Dijke" }, { - "id" : "Peter Campbell Smith", "name" : "Peter Campbell Smith", "data" : [ [ @@ -225,21 +242,21 @@ "Blog", 1 ] - ] + ], + "id" : "Peter Campbell Smith" }, { "name" : "Peter Meszaros", - "id" : "Peter Meszaros", "data" : [ [ "Perl", 2 ] - ] + ], + "id" : "Peter Meszaros" }, { "id" : "Robbie Hatley", - "name" : "Robbie Hatley", "data" : [ [ "Perl", @@ -249,7 +266,22 @@ "Blog", 1 ] - ] + ], + "name" : "Robbie Hatley" + }, + { + "data" : [ + [ + "Perl", + 2 + ], + [ + "Raku", + 2 + ] + ], + "name" : "Roger Bell_West", + "id" : "Roger Bell_West" }, { "data" : [ @@ -262,6 +294,21 @@ "id" : "Simon Proctor" }, { + "id" : "Stephen G. Lynn", + "name" : "Stephen G. Lynn", + "data" : [ + [ + "Perl", + 2 + ], + [ + "Blog", + 1 + ] + ] + }, + { + "id" : "Thomas Kohler", "data" : [ [ "Perl", @@ -272,11 +319,9 @@ 2 ] ], - "id" : "Thomas Kohler", "name" : "Thomas Kohler" }, { - "name" : "Ulrich Rieke", "id" : "Ulrich Rieke", "data" : [ [ @@ -287,7 +332,8 @@ "Raku", 2 ] - ] + ], + "name" : "Ulrich Rieke" }, { "data" : [ @@ -300,14 +346,21 @@ 1 ] ], - "id" : "W. Luis Mochan", - "name" : "W. Luis Mochan" + "name" : "W. Luis Mochan", + "id" : "W. Luis Mochan" } ] }, - "tooltip" : { - "headerFormat" : "<span style='font-size:11px'>{series.name}</span><br/>", - "followPointer" : 1, - "pointFormat" : "<span style='color:{point.color}'>{point.name}</span>: <b>{point.y:f}</b><br/>" + "subtitle" : { + "text" : "[Champions: 18] Last updated at 2024-01-10 17:06:17 GMT" + }, + "plotOptions" : { + "series" : { + "dataLabels" : { + "format" : "{point.y}", + "enabled" : 1 + }, + "borderWidth" : 0 + } } } diff --git a/stats/pwc-language-breakdown-summary.json b/stats/pwc-language-breakdown-summary.json index dca33e6016..6466ba1c2d 100644 --- a/stats/pwc-language-breakdown-summary.json +++ b/stats/pwc-language-breakdown-summary.json @@ -1,63 +1,63 @@ { - "subtitle" : { - "text" : "Last updated at 2024-01-09 22:29:40 GMT" - }, - "xAxis" : { - "labels" : { - "style" : { - "fontSize" : "13px", - "fontFamily" : "Verdana, sans-serif" - } - }, - "type" : "category" + "tooltip" : { + "pointFormat" : "<b>{point.y:.0f}</b>" }, "chart" : { "type" : "column" }, - "title" : { - "text" : "The Weekly Challenge Contributions [2019 - 2024]" - }, "series" : [ { + "name" : "Contributions", "data" : [ [ "Blog", - 4397 + 4399 ], [ "Perl", - 12930 + 12937 ], [ "Raku", - 7457 + 7460 ] ], "dataLabels" : { - "align" : "right", - "format" : "{point.y:.0f}", + "enabled" : "true", "y" : 10, - "color" : "#FFFFFF", "rotation" : -90, + "format" : "{point.y:.0f}", + "align" : "right", + "color" : "#FFFFFF", "style" : { "fontFamily" : "Verdana, sans-serif", "fontSize" : "13px" - }, - "enabled" : "true" - }, - "name" : "Contributions" + } + } } ], - "tooltip" : { - "pointFormat" : "<b>{point.y:.0f}</b>" + "legend" : { + "enabled" : "false" + }, + "title" : { + "text" : "The Weekly Challenge Contributions [2019 - 2024]" + }, + "subtitle" : { + "text" : "Last updated at 2024-01-10 17:06:17 GMT" + }, + "xAxis" : { + "labels" : { + "style" : { + "fontSize" : "13px", + "fontFamily" : "Verdana, sans-serif" + } + }, + "type" : "category" }, "yAxis" : { + "min" : 0, "title" : { "text" : null - }, - "min" : 0 - }, - "legend" : { - "enabled" : "false" + } } } diff --git a/stats/pwc-language-breakdown.json b/stats/pwc-language-breakdown.json index 8a342ac159..7b8510c7bf 100644 --- a/stats/pwc-language-breakdown.json +++ b/stats/pwc-language-breakdown.json @@ -1,13 +1,17 @@ { - "xAxis" : { - "type" : "category" + "tooltip" : { + "headerFormat" : "<span style=\"font-size:11px\"></span>", + "pointFormat" : "<span style=\"color:{point.color}\">Challenge {point.name}</span>: <b>{point.y:f}</b><br/>", + "followPointer" : "true" }, - "subtitle" : { - "text" : "Click the columns to drilldown the language breakdown. Last updated at 2024-01-09 22:29:40 GMT" + "chart" : { + "type" : "column" + }, + "legend" : { + "enabled" : "false" }, "series" : [ { - "colorByPoint" : "true", "data" : [ { "drilldown" : "001", @@ -15,19 +19,19 @@ "y" : 164 }, { - "y" : 129, + "drilldown" : "002", "name" : "#002", - "drilldown" : "002" + "y" : 129 }, { "y" : 87, - "drilldown" : "003", - "name" : "#003" + "name" : "#003", + "drilldown" : "003" }, { - "y" : 103, "drilldown" : "004", - "name" : "#004" + "name" : "#004", + "y" : 103 }, { "y" : 80, @@ -35,9 +39,9 @@ "name" : "#005" }, { + "y" : 61, "name" : "#006", - "drilldown" : "006", - "y" : 61 + "drilldown" : "006" }, { "y" : 69, @@ -51,12 +55,12 @@ }, { "y" : 80, - "name" : "#009", - "drilldown" : "009" + "drilldown" : "009", + "name" : "#009" }, { - "drilldown" : "010", "name" : "#010", + "drilldown" : "010", "y" : 69 }, { @@ -75,24 +79,24 @@ "drilldown" : "013" }, { + "y" : 102, "drilldown" : "014", - "name" : "#014", - "y" : 102 + "name" : "#014" }, { - "y" : 101, "name" : "#015", - "drilldown" : "015" + "drilldown" : "015", + "y" : 101 }, { "y" : 75, - "name" : "#016", - "drilldown" : "016" + "drilldown" : "016", + "name" : "#016" }, { - "y" : 86, + "name" : "#017", "drilldown" : "017", - "name" : "#017" + "y" : 86 }, { "name" : "#018", @@ -100,13 +104,13 @@ "y" : 83 }, { - "y" : 105, "drilldown" : "019", - "name" : "#019" + "name" : "#019", + "y" : 105 }, { - "name" : "#020", "drilldown" : "020", + "name" : "#020", "y" : 103 }, { @@ -115,18 +119,18 @@ "y" : 74 }, { - "name" : "#022", "drilldown" : "022", + "name" : "#022", "y" : 72 }, { - "name" : "#023", "drilldown" : "023", + "name" : "#023", "y" : 101 }, { - "drilldown" : "024", "name" : "#024", + "drilldown" : "024", "y" : 77 }, { @@ -135,49 +139,49 @@ "name" : "#025" }, { - "drilldown" : "026", "name" : "#026", + "drilldown" : "026", "y" : 76 }, { - "y" : 64, "drilldown" : "027", - "name" : "#027" + "name" : "#027", + "y" : 64 }, { - "y" : 82, "drilldown" : "028", - "name" : "#028" + "name" : "#028", + "y" : 82 }, { + "y" : 83, "drilldown" : "029", - "name" : "#029", - "y" : 83 + "name" : "#029" }, { - "name" : "#030", + "y" : 121, "drilldown" : "030", - "y" : 121 + "name" : "#030" }, { - "name" : "#031", + "y" : 93, "drilldown" : "031", - "y" : 93 + "name" : "#031" }, { - "y" : 98, + "name" : "#032", "drilldown" : "032", - "name" : "#032" + "y" : 98 }, { "y" : 114, - "name" : "#033", - "drilldown" : "033" + "drilldown" : "033", + "name" : "#033" }, { - "y" : 70, + "drilldown" : "034", "name" : "#034", - "drilldown" : "034" + "y" : 70 }, { "y" : 68, @@ -185,44 +189,44 @@ "drilldown" : "035" }, { - "y" : 70, "drilldown" : "036", - "name" : "#036" + "name" : "#036", + "y" : 70 }, { "y" : 70, - "name" : "#037", - "drilldown" : "037" + "drilldown" : "037", + "name" : "#037" }, { + "y" : 74, "name" : "#038", - "drilldown" : "038", - "y" : 74 + "drilldown" : "038" }, { - "y" : 68, "drilldown" : "039", - "name" : "#039" + "name" : "#039", + "y" : 68 }, { + "y" : 77, "name" : "#040", - "drilldown" : "040", - "y" : 77 + "drilldown" : "040" }, { - "y" : 80, + "name" : "#041", "drilldown" : "041", - "name" : "#041" + "y" : 80 }, { - "y" : 98, "name" : "#042", - "drilldown" : "042" + "drilldown" : "042", + "y" : 98 }, { - "y" : 72, + "name" : "#043", "drilldown" : "043", - "name" : "#043" + "y" : 72 }, { "y" : 90, @@ -230,13 +234,13 @@ "name" : "#044" }, { - "y" : 102, + "name" : "#045", "drilldown" : "045", - "name" : "#045" + "y" : 102 }, { - "name" : "#046", "drilldown" : "046", + "name" : "#046", "y" : 93 }, { @@ -245,9 +249,9 @@ "y" : 88 }, { - "y" : 112, "drilldown" : "048", - "name" : "#048" + "name" : "#048", + "y" : 112 }, { "drilldown" : "049", @@ -260,24 +264,24 @@ "y" : 104 }, { - "y" : 95, + "name" : "#051", "drilldown" : "051", - "name" : "#051" + "y" : 95 }, { - "y" : 93, + "drilldown" : "052", "name" : "#052", - "drilldown" : "052" + "y" : 93 }, { "y" : 105, - "drilldown" : "053", - "name" : "#053" + "name" : "#053", + "drilldown" : "053" }, { "y" : 107, - "drilldown" : "054", - "name" : "#054" + "name" : "#054", + "drilldown" : "054" }, { "y" : 92, @@ -286,8 +290,8 @@ }, { "y" : 104, - "drilldown" : "056", - "name" : "#056" + "name" : "#056", + "drilldown" : "056" }, { "y" : 86, @@ -295,9 +299,9 @@ "name" : "#057" }, { - "y" : 71, + "name" : "#058", "drilldown" : "058", - "name" : "#058" + "y" : 71 }, { "y" : 93, @@ -305,24 +309,24 @@ "name" : "#059" }, { + "y" : 89, "name" : "#060", - "drilldown" : "060", - "y" : 89 + "drilldown" : "060" }, { - "y" : 85, + "name" : "#061", "drilldown" : "061", - "name" : "#061" + "y" : 85 }, { + "y" : 62, "drilldown" : "062", - "name" : "#062", - "y" : 62 + "name" : "#062" }, { - "y" : 93, + "name" : "#063", "drilldown" : "063", - "name" : "#063" + "y" : 93 }, { "drilldown" : "064", @@ -330,34 +334,34 @@ "y" : 84 }, { - "y" : 77, + "name" : "#065", "drilldown" : "065", - "name" : "#065" + "y" : 77 }, { - "drilldown" : "066", "name" : "#066", + "drilldown" : "066", "y" : 88 }, { - "y" : 94, + "name" : "#067", "drilldown" : "067", - "name" : "#067" + "y" : 94 }, { - "y" : 79, + "name" : "#068", "drilldown" : "068", - "name" : "#068" + "y" : 79 }, { - "drilldown" : "069", "name" : "#069", + "drilldown" : "069", "y" : 87 }, { - "name" : "#070", + "y" : 98, "drilldown" : "070", - "y" : 98 + "name" : "#070" }, { "drilldown" : "071", @@ -365,9 +369,9 @@ "y" : 82 }, |
