diff options
| author | Mohammad S Anwar <mohammad.anwar@yahoo.com> | 2020-05-19 04:47:46 +0100 |
|---|---|---|
| committer | Mohammad S Anwar <mohammad.anwar@yahoo.com> | 2020-05-19 04:47:46 +0100 |
| commit | 74bed36e5eafeb25e8cbfbaa52bdb5bf08ab98be (patch) | |
| tree | 9c5e550e6365c927d3c8358f02d20aefb93874f6 | |
| parent | 3822e63a36a559ed8eb95a4ab9b5f110c72f7a50 (diff) | |
| download | perlweeklychallenge-club-74bed36e5eafeb25e8cbfbaa52bdb5bf08ab98be.tar.gz perlweeklychallenge-club-74bed36e5eafeb25e8cbfbaa52bdb5bf08ab98be.tar.bz2 perlweeklychallenge-club-74bed36e5eafeb25e8cbfbaa52bdb5bf08ab98be.zip | |
- Added Raku solution to the "Product SubArray" task.
| -rw-r--r-- | challenge-061/mohammad-anwar/raku/ch-1.p6 | 26 | ||||
| -rw-r--r-- | challenge-061/mohammad-anwar/raku/ch-1a.p6 | 26 | ||||
| -rw-r--r-- | stats/pwc-current.json | 172 | ||||
| -rw-r--r-- | stats/pwc-language-breakdown-summary.json | 42 | ||||
| -rw-r--r-- | stats/pwc-language-breakdown.json | 416 | ||||
| -rw-r--r-- | stats/pwc-leaders.json | 400 | ||||
| -rw-r--r-- | stats/pwc-summary-1-30.json | 82 | ||||
| -rw-r--r-- | stats/pwc-summary-121-150.json | 48 | ||||
| -rw-r--r-- | stats/pwc-summary-151-180.json | 60 | ||||
| -rw-r--r-- | stats/pwc-summary-31-60.json | 42 | ||||
| -rw-r--r-- | stats/pwc-summary-61-90.json | 114 | ||||
| -rw-r--r-- | stats/pwc-summary-91-120.json | 100 | ||||
| -rw-r--r-- | stats/pwc-summary.json | 56 |
13 files changed, 820 insertions, 764 deletions
diff --git a/challenge-061/mohammad-anwar/raku/ch-1.p6 b/challenge-061/mohammad-anwar/raku/ch-1.p6 new file mode 100644 index 0000000000..5fb6ba4fae --- /dev/null +++ b/challenge-061/mohammad-anwar/raku/ch-1.p6 @@ -0,0 +1,26 @@ +#!/usr/bin/env perl6 + +use v6.d; + +sub MAIN(:@n where .all ~~ Int = <2 5 -1 3>) { + say sprintf("[ %s ] => %s", @n.join(", "), max-product-subarray(@n)); +} + +sub max-product-subarray(@array where .all ~~ Int) { + + my $subarray = {}; + my $size = @array.elems; + for 0 .. $size-1 -> $i { + for $i .. $size-2 -> $j is copy { + my @x = (); + my $y = 1; + for $i .. ++$j -> $k { + @x.push: @array[$k]; + $y *= @array[$k]; + } + $subarray.{sprintf("[ %s ]", @x.join(", "))} = $y; + } + } + + return |$subarray.sort(*.value).reverse.[0].keys; +} diff --git a/challenge-061/mohammad-anwar/raku/ch-1a.p6 b/challenge-061/mohammad-anwar/raku/ch-1a.p6 new file mode 100644 index 0000000000..8a578d20c2 --- /dev/null +++ b/challenge-061/mohammad-anwar/raku/ch-1a.p6 @@ -0,0 +1,26 @@ +#!/usr/bin/env perl6 + +use Test; + +is max-product-subarray(<2 5 -1 3>), "[ 2, 5 ]"; + +done-testing; + +sub max-product-subarray(@array where .all ~~ Int) { + + my $subarray = {}; + my $size = @array.elems; + for 0 .. $size-1 -> $i { + for $i .. $size-2 -> $j is copy { + my @x = (); + my $y = 1; + for $i .. ++$j -> $k { + @x.push: @array[$k]; + $y *= @array[$k]; + } + $subarray.{sprintf("[ %s ]", @x.join(", "))} = $y; + } + } + + return |$subarray.sort(*.value).reverse.[0].keys; +} diff --git a/stats/pwc-current.json b/stats/pwc-current.json index 1d3a53d42e..ab7000d1ba 100644 --- a/stats/pwc-current.json +++ b/stats/pwc-current.json @@ -1,73 +1,22 @@ { - "series" : [ - { - "name" : "Perl Weekly Challenge - 061", - "colorByPoint" : 1, - "data" : [ - { - "drilldown" : "Dave Jacoby", - "name" : "Dave Jacoby", - "y" : 3 - }, - { - "drilldown" : "E. Choroba", - "y" : 2, - "name" : "E. Choroba" - }, - { - "drilldown" : "Javier Luque", - "name" : "Javier Luque", - "y" : 5 - }, - { - "name" : "Luca Ferrari", - "y" : 4, - "drilldown" : "Luca Ferrari" - }, - { - "name" : "Mark Anderson", - "y" : 1, - "drilldown" : "Mark Anderson" - }, - { - "drilldown" : "Mohammad S Anwar", - "y" : 2, - "name" : "Mohammad S Anwar" - }, - { - "drilldown" : "Roger Bell_West", - "name" : "Roger Bell_West", - "y" : 3 - }, - { - "drilldown" : "Simon Proctor", - "name" : "Simon Proctor", - "y" : 2 - }, - { - "drilldown" : "Ulrich Rieke", - "name" : "Ulrich Rieke", - "y" : 3 - } - ] - } - ], "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, - "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/>" + }, + "xAxis" : { + "type" : "category" }, "yAxis" : { "title" : { "text" : "Total Solutions" } }, - "xAxis" : { - "type" : "category" - }, "drilldown" : { "series" : [ { + "id" : "Dave Jacoby", + "name" : "Dave Jacoby", "data" : [ [ "Perl", @@ -77,21 +26,21 @@ "Blog", 1 ] - ], - "id" : "Dave Jacoby", - "name" : "Dave Jacoby" + ] }, { + "id" : "E. Choroba", "data" : [ [ "Perl", 2 ] ], - "id" : "E. Choroba", "name" : "E. Choroba" }, { + "id" : "Javier Luque", + "name" : "Javier Luque", "data" : [ [ "Perl", @@ -105,12 +54,9 @@ "Blog", 1 ] - ], - "id" : "Javier Luque", - "name" : "Javier Luque" + ] }, { - "id" : "Luca Ferrari", "name" : "Luca Ferrari", "data" : [ [ @@ -121,29 +67,36 @@ "Blog", 2 ] - ] + ], + "id" : "Luca Ferrari" }, { - "name" : "Mark Anderson", "id" : "Mark Anderson", "data" : [ [ "Raku", 1 ] - ] + ], + "name" : "Mark Anderson" }, { "id" : "Mohammad S Anwar", - "name" : "Mohammad S Anwar", "data" : [ [ "Perl", 2 + ], + [ + "Raku", + 1 ] - ] + ], + "name" : "Mohammad S Anwar" }, { + "id" : "Roger Bell_West", + "name" : "Roger Bell_West", "data" : [ [ "Perl", @@ -153,9 +106,7 @@ "Raku", 1 ] - ], - "name" : "Roger Bell_West", - "id" : "Roger Bell_West" + ] }, { "data" : [ @@ -169,7 +120,6 @@ }, { "id" : "Ulrich Rieke", - "name" : "Ulrich Rieke", "data" : [ [ "Perl", @@ -179,29 +129,83 @@ "Raku", 2 ] - ] + ], + "name" : "Ulrich Rieke" } ] }, "legend" : { "enabled" : 0 }, + "chart" : { + "type" : "column" + }, + "subtitle" : { + "text" : "[Champions: 9] Last updated at 2020-05-19 03:46:07 GMT" + }, "plotOptions" : { "series" : { "borderWidth" : 0, "dataLabels" : { - "enabled" : 1, - "format" : "{point.y}" + "format" : "{point.y}", + "enabled" : 1 } } }, "title" : { "text" : "Perl Weekly Challenge - 061" }, - "chart" : { - "type" : "column" - }, - "subtitle" : { - "text" : "[Champions: 9] Last updated at 2020-05-19 01:10:16 GMT" - } + "series" : [ + { + "data" : [ + { + "name" : "Dave Jacoby", + "y" : 3, + "drilldown" : "Dave Jacoby" + }, + { + "drilldown" : "E. Choroba", + "name" : "E. Choroba", + "y" : 2 + }, + { + "drilldown" : "Javier Luque", + "y" : 5, + "name" : "Javier Luque" + }, + { + "name" : "Luca Ferrari", + "y" : 4, + "drilldown" : "Luca Ferrari" + }, + { + "y" : 1, + "name" : "Mark Anderson", + "drilldown" : "Mark Anderson" + }, + { + "name" : "Mohammad S Anwar", + "y" : 3, + "drilldown" : "Mohammad S Anwar" + }, + { + "name" : "Roger Bell_West", + "y" : 3, + "drilldown" : "Roger Bell_West" + }, + { + "drilldown" : "Simon Proctor", + "name" : "Simon Proctor", + "y" : 2 + }, + { + "y" : 3, + "name" : "Ulrich Rieke", + "drilldown" : "Ulrich Rieke" + } + ], + "name" : "Perl Weekly Challenge - 061", + "colorByPoint" : 1 + } + ] } diff --git a/stats/pwc-language-breakdown-summary.json b/stats/pwc-language-breakdown-summary.json index 129a76c7cf..b5a40690e1 100644 --- a/stats/pwc-language-breakdown-summary.json +++ b/stats/pwc-language-breakdown-summary.json @@ -1,9 +1,7 @@ { - "tooltip" : { - "pointFormat" : "<b>{point.y:.0f}</b>" - }, "series" : [ { + "name" : "Contributions", "data" : [ [ "Blog", @@ -15,49 +13,51 @@ ], [ "Raku", - 1605 + 1606 ] ], - "name" : "Contributions", "dataLabels" : { "y" : 10, - "enabled" : "true", + "rotation" : -90, + "align" : "right", + "format" : "{point.y:.0f}", + "color" : "#FFFFFF", "style" : { "fontFamily" : "Verdana, sans-serif", "fontSize" : "13px" }, - "format" : "{point.y:.0f}", - "color" : "#FFFFFF", - "rotation" : -90, - "align" : "right" + "enabled" : "true" } } ], - "chart" : { - "type" : "column" + "title" : { + "text" : "Perl Weekly Challenge Contributions [2019 - 2020]" }, "subtitle" : { - "text" : "Last updated at 2020-05-19 01:10:16 GMT" + "text" : "Last updated at 2020-05-19 03:46:07 GMT" }, - "title" : { - "text" : "Perl Weekly Challenge Contributions [2019 - 2020]" + "chart" : { + "type" : "column" }, "legend" : { "enabled" : "false" }, "yAxis" : { - "min" : 0, "title" : { "text" : null - } + }, + "min" : 0 }, "xAxis" : { - "type" : "category", "labels" : { "style" : { - "fontSize" : "13px", - "fontFamily" : "Verdana, sans-serif" + "fontFamily" : "Verdana, sans-serif", + "fontSize" : "13px" } - } + }, + "type" : "category" + }, + "tooltip" : { + "pointFormat" : "<b>{point.y:.0f}</b>" } } diff --git a/stats/pwc-language-breakdown.json b/stats/pwc-language-breakdown.json index 09998cf791..e34d69e58a 100644 --- a/stats/pwc-language-breakdown.json +++ b/stats/pwc-language-breakdown.json @@ -1,13 +1,12 @@ { "series" : [ { - "name" : "Perl Weekly Challenge Languages", "colorByPoint" : "true", "data" : [ { - "drilldown" : "001", "name" : "#001", - "y" : 142 + "y" : 142, + "drilldown" : "001" }, { "drilldown" : "002", @@ -20,19 +19,19 @@ "name" : "#003" }, { - "drilldown" : "004", "y" : 91, - "name" : "#004" + "name" : "#004", + "drilldown" : "004" }, { - "drilldown" : "005", + "y" : 72, "name" : "#005", - "y" : 72 + "drilldown" : "005" }, { + "drilldown" : "006", "y" : 52, - "name" : "#006", - "drilldown" : "006" + "name" : "#006" }, { "y" : 59, @@ -41,8 +40,8 @@ }, { "drilldown" : "008", - "y" : 72, - "name" : "#008" + "name" : "#008", + "y" : 72 }, { "name" : "#009", @@ -56,18 +55,18 @@ }, { "drilldown" : "011", - "name" : "#011", - "y" : 79 + "y" : 79, + "name" : "#011" }, { - "y" : 83, + "drilldown" : "012", "name" : "#012", - "drilldown" : "012" + "y" : 83 }, { - "drilldown" : "013", + "y" : 76, "name" : "#013", - "y" : 76 + "drilldown" : "013" }, { "name" : "#014", @@ -75,9 +74,9 @@ "drilldown" : "014" }, { - "y" : 93, + "drilldown" : "015", "name" : "#015", - "drilldown" : "015" + "y" : 93 }, { "name" : "#016", @@ -90,49 +89,49 @@ "name" : "#017" }, { - "name" : "#018", + "drilldown" : "018", "y" : 76, - "drilldown" : "018" + "name" : "#018" }, { - "name" : "#019", + "drilldown" : "019", "y" : 97, - "drilldown" : "019" + "name" : "#019" }, { - "drilldown" : "020", + "y" : 95, "name" : "#020", - "y" : 95 + "drilldown" : "020" }, { - "drilldown" : "021", "name" : "#021", - "y" : 67 + "y" : 67, + "drilldown" : "021" }, { - "name" : "#022", "y" : 63, + "name" : "#022", "drilldown" : "022" }, { "drilldown" : "023", - "name" : "#023", - "y" : 91 + "y" : 91, + "name" : "#023" }, { - "name" : "#024", "y" : 70, + "name" : "#024", "drilldown" : "024" }, { - "name" : "#025", "y" : 55, + "name" : "#025", "drilldown" : "025" }, { - "drilldown" : "026", + "name" : "#026", "y" : 70, - "name" : "#026" + "drilldown" : "026" }, { "y" : 58, @@ -155,14 +154,14 @@ "name" : "#030" }, { + "drilldown" : "031", "name" : "#031", - "y" : 87, - "drilldown" : "031" + "y" : 87 }, { "drilldown" : "032", - "name" : "#032", - "y" : 92 + "y" : 92, + "name" : "#032" }, { "drilldown" : "033", @@ -171,23 +170,23 @@ }, { "drilldown" : "034", - "name" : "#034", - "y" : 62 + "y" : 62, + "name" : "#034" }, { "drilldown" : "035", - "name" : "#035", - "y" : 62 + "y" : 62, + "name" : "#035" }, { - "name" : "#036", "y" : 66, + "name" : "#036", "drilldown" : "036" }, { "drilldown" : "037", - "name" : "#037", - "y" : 65 + "y" : 65, + "name" : "#037" }, { "y" : 65, @@ -195,18 +194,18 @@ "drilldown" : "038" }, { + "drilldown" : "039", "y" : 60, - "name" : "#039", - "drilldown" : "039" + "name" : "#039" }, { "drilldown" : "040", - "name" : "#040", - "y" : 71 + "y" : 71, + "name" : "#040" }, { - "y" : 74, "name" : "#041", + "y" : 74, "drilldown" : "041" }, { @@ -220,24 +219,24 @@ "drilldown" : "043" }, { - "drilldown" : "044", + "y" : 82, "name" : "#044", - "y" : 82 + "drilldown" : "044" }, { - "drilldown" : "045", "name" : "#045", - "y" : 94 + "y" : 94, + "drilldown" : "045" }, { - "drilldown" : "046", "y" : 85, - "name" : "#046" + "name" : "#046", + "drilldown" : "046" }, { - "drilldown" : "047", + "name" : "#047", "y" : 82, - "name" : "#047" + "drilldown" : "047" }, { "drilldown" : "048", @@ -245,19 +244,19 @@ "name" : "#048" }, { - "name" : "#049", + "drilldown" : "049", "y" : 85, - "drilldown" : "049" + "name" : "#049" }, { + "drilldown" : "050", "name" : "#050", - "y" : 96, - "drilldown" : "050" + "y" : 96 }, { - "drilldown" : "051", "y" : 87, - "name" : "#051" + "name" : "#051", + "drilldown" : "051" }, { "y" : 89, @@ -296,58 +295,45 @@ }, { "drilldown" : "059", - "y" : 82, - "name" : "#059" + "name" : "#059", + "y" : 82 }, { - "drilldown" : "060", "name" : "#060", - "y" : 76 + "y" : 76, + "drilldown" : "060" }, { "drilldown" : "061", - "y" : 25, + "y" : 26, "name" : "#061" } - ] + ], + "name" : "Perl Weekly Challenge Languages" } ], - "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" - }, - "plotOptions" : { - "series" : { - "borderWidth" : 0, - "dataLabels" : { - "format" : "{point.y}", - "enabled" : 1 - } - } - }, "title" : { "text" : "Perl Weekly Challenge Language" }, - "subtitle" : { - "text" : "Click the columns to drilldown the language breakdown. Last updated at 2020-05-19 01:10:16 GMT" - }, "chart" : { "type" : "column" }, - "xAxis" : { - "type" : "category" + "subtitle" : { + "text" : "Click the columns to drilldown the language breakdown. Last updated at 2020-05-19 03:46:07 GMT" }, - "yAxis" : { - "title" : { - "text" : "Total Solutions" + "plotOptions" : { + "series" : { + "dataLabels" : { + "enabled" : 1, + "format" : "{point.y}" + }, + "borderWidth" : 0 } }, "drilldown" : { "series" : [ { "id" : "001", - "name" : "001", "data" : [ [ "Perl", @@ -361,10 +347,10 @@ "Blog", 11 ] - ] + ], + "name" : "001" }, { - "name" : "002", "id" : "002", "data" : [ [ @@ -379,9 +365,12 @@ "Blog", 10 ] - ] + ], + "name" : "002" }, { + "id" : "003", + "name" : "003", "data" : [ [ "Perl", @@ -395,13 +384,10 @@ "Blog", 9 ] - ], - "name" : "003", - "id" : "003" + ] }, { "name" : "004", - "id" : "004", "data" : [ [ "Perl", @@ -415,11 +401,11 @@ "Blog", 10 ] - ] + ], + "id" : "004" }, { "name" : "005", - "id" : "005", "data" : [ [ "Perl", @@ -433,11 +419,11 @@ "Blog", 12 ] - ] + ], + "id" : "005" }, { "id" : "006", - "name" : "006", "data" : [ [ "Perl", @@ -451,7 +437,8 @@ "Blog", 7 ] - ] + ], + "name" : "006" }, { "data" : [ @@ -473,7 +460,6 @@ }, { "name" : "008", - "id" : "008", "data" : [ [ "Perl", @@ -487,9 +473,11 @@ "Blog", 12 ] - ] + ], + "id" : "008" }, { + "id" : "009", "data" : [ [ "Perl", @@ -504,11 +492,9 @@ 13 ] ], - "id" : "009", "name" : "009" }, { - "id" : "010", "name" : "010", "data" : [ [ @@ -523,10 +509,10 @@ "Blog", 11 ] - ] + ], + "id" : "010" }, { - "name" : "011", "id" : "011", "data" : [ [ @@ -541,9 +527,11 @@ "Blog", 10 ] - ] + ], + "name" : "011" }, { + "id" : "012", "data" : [ [ "Perl", @@ -558,10 +546,10 @@ 11 ] ], - "name" : "012", - "id" : "012" + "name" : "012" }, { + "name" : "013", "data" : [ [ "Perl", @@ -576,12 +564,10 @@ 13 ] ], - "id" : "013", - "name" : "013" + "id" : "013" }, { "id" : "014", - "name" : "014", "data" : [ [ "Perl", @@ -595,11 +581,11 @@ "Blog", 15 ] - ] + ], + "name" : "014" }, { "name" : "015", - "id" : "015", "data" : [ [ "Perl", @@ -613,9 +599,12 @@ "Blog", 15 ] - ] + ], + "id" : "015" }, { + "id" : "016", + "name" : "016", "data" : [ [ "Perl", @@ -629,13 +618,9 @@ "Blog", 12 ] - ], - "id" : "016", - "name" : "016" + ] }, { - "id" : "017", - "name" : "017", "data" : [ [ "Perl", @@ -649,10 +634,11 @@ "Blog", 12 ] - ] + ], + "name" : "017", + "id" : "017" }, { - "name" : "018", "id" : "018", "data" : [ [ @@ -667,11 +653,11 @@ "Blog", 14 ] - ] + ], + "name" : "018" }, { "id" : "019", - "name" : "019", "data" : [ [ "Perl", @@ -685,9 +671,11 @@ "Blog", 13 ] - ] + ], + "name" : "019" }, { + "id" : "020", "data" : [ [ "Perl", @@ -702,12 +690,11 @@ 13 ] ], - "name" : "020", - "id" : "020" + "name" : "020" }, { - "name" : "021", "id" : "021", + "name" : "021", "data" : [ [ "Perl", @@ -724,6 +711,7 @@ ] }, { + "id" : "022", "data" : [ [ "Perl", @@ -738,10 +726,10 @@ 10 ] ], - "id" : "022", "name" : "022" }, { + "name" : "023", "data" : [ [ "Perl", @@ -756,10 +744,10 @@ 12 ] ], - "id" : "023", - "name" : "023" + "id" : "023" }, { + "name" : "024", "data" : [ [ "Perl", @@ -774,10 +762,10 @@ 11 ] ], - "id" : "024", - "name" : "024" + "id" : "024" }, { + "id" : "025", "data" : [ [ "Perl", @@ -792,10 +780,11 @@ 12 ] ], - "id" : "025", "name" : "025" }, { + "id" : "026", + "name" : "026", "data" : [ [ "Perl", @@ -809,11 +798,11 @@ "Blog", 10 ] - ] |
