diff options
| author | Mohammad S Anwar <mohammad.anwar@yahoo.com> | 2021-07-28 22:33:31 +0100 |
|---|---|---|
| committer | Mohammad S Anwar <mohammad.anwar@yahoo.com> | 2021-07-28 22:33:31 +0100 |
| commit | 1278296bb25bf251215c68e39f1ea72536f083d3 (patch) | |
| tree | 98731d5538a0a8cc50d981256af9509ff583251b | |
| parent | 23c4139bae1c8283a1aa5eaca4d4531a3c70d3a5 (diff) | |
| download | perlweeklychallenge-club-1278296bb25bf251215c68e39f1ea72536f083d3.tar.gz perlweeklychallenge-club-1278296bb25bf251215c68e39f1ea72536f083d3.tar.bz2 perlweeklychallenge-club-1278296bb25bf251215c68e39f1ea72536f083d3.zip | |
- Added Perl solution to task 1 of week 123.
| -rw-r--r-- | challenge-123/mohammad-anwar/perl/ch-1.pl | 39 | ||||
| -rw-r--r-- | stats/pwc-current.json | 161 | ||||
| -rw-r--r-- | stats/pwc-language-breakdown-summary.json | 54 | ||||
| -rw-r--r-- | stats/pwc-language-breakdown.json | 844 | ||||
| -rw-r--r-- | stats/pwc-leaders.json | 400 | ||||
| -rw-r--r-- | stats/pwc-summary-1-30.json | 114 | ||||
| -rw-r--r-- | stats/pwc-summary-121-150.json | 122 | ||||
| -rw-r--r-- | stats/pwc-summary-151-180.json | 56 | ||||
| -rw-r--r-- | stats/pwc-summary-181-210.json | 22 | ||||
| -rw-r--r-- | stats/pwc-summary-211-240.json | 110 | ||||
| -rw-r--r-- | stats/pwc-summary-31-60.json | 118 | ||||
| -rw-r--r-- | stats/pwc-summary-61-90.json | 22 | ||||
| -rw-r--r-- | stats/pwc-summary-91-120.json | 52 | ||||
| -rw-r--r-- | stats/pwc-summary.json | 56 |
14 files changed, 1112 insertions, 1058 deletions
diff --git a/challenge-123/mohammad-anwar/perl/ch-1.pl b/challenge-123/mohammad-anwar/perl/ch-1.pl new file mode 100644 index 0000000000..6d9d71c044 --- /dev/null +++ b/challenge-123/mohammad-anwar/perl/ch-1.pl @@ -0,0 +1,39 @@ +#!/usr/bin/perl + +use strict; +use warnings; + +use Test::More; +use List::Util qw(min); + +is(ugly_number(1), 1); +is(ugly_number(7), 8); +is(ugly_number(10), 12); +is(ugly_number(150), 5832); + +done_testing; + +sub ugly_number { + my ($n) = @_; + + return $n if ($n == 1); + + my $multiple_of = { 2 => 2, 3 => 3, 5 => 5 }; + my $index_of = { 2 => 0, 3 => 0, 5 => 0 }; + + my $next = 1; + my $ugly_numbers = [ $next ]; + foreach my $i (1 .. $n-1) { + $next = min(values %$multiple_of); + $ugly_numbers->[$i] = $next; + + foreach my $k (keys %$multiple_of) { + if ($next == $multiple_of->{$k}) { + $index_of->{$k}++; + $multiple_of->{$k} = $ugly_numbers->[$index_of->{$k}] * $k; + } + } + } + + return $next; +} diff --git a/stats/pwc-current.json b/stats/pwc-current.json index d023455555..98467a0c7e 100644 --- a/stats/pwc-current.json +++ b/stats/pwc-current.json @@ -1,44 +1,31 @@ { - "legend" : { - "enabled" : 0 - }, - "xAxis" : { - "type" : "category" - }, - "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/>" - }, "series" : [ { - "name" : "The Weekly Challenge - 123", - "colorByPoint" : 1, "data" : [ { - "drilldown" : "Abigail", "y" : 2, - "name" : "Abigail" + "name" : "Abigail", + "drilldown" : "Abigail" }, { - "name" : "Cheok-Yin Fung", "y" : 2, + "name" : "Cheok-Yin Fung", "drilldown" : "Cheok-Yin Fung" }, { "name" : "Dave Jacoby", - "drilldown" : "Dave Jacoby", - "y" : 4 + "y" : 4, + "drilldown" : "Dave Jacoby" }, { + "drilldown" : "E. Choroba", "name" : "E. Choroba", - "y" : 2, - "drilldown" : "E. Choroba" + "y" : 2 }, { "name" : "James Smith", - "drilldown" : "James Smith", - "y" : 3 + "y" : 3, + "drilldown" : "James Smith" }, { "name" : "Lucas Ransan", @@ -46,9 +33,9 @@ "drilldown" : "Lucas Ransan" }, { - "drilldown" : "Mark Anderson", + "name" : "Mark Anderson", "y" : 2, - "name" : "Mark Anderson" + "drilldown" : "Mark Anderson" }, { "name" : "Markus Holzer", @@ -56,19 +43,24 @@ "drilldown" : "Markus Holzer" }, { - "name" : "Niels van Dijke", + "name" : "Mohammad S Anwar", + "y" : 1, + "drilldown" : "Mohammad S Anwar" + }, + { + "drilldown" : "Niels van Dijke", "y" : 2, - "drilldown" : "Niels van Dijke" + "name" : "Niels van Dijke" }, { + "name" : "Roger Bell_West", "y" : 5, - "drilldown" : "Roger Bell_West", - "name" : "Roger Bell_West" + "drilldown" : "Roger Bell_West" }, { - "y" : 3, "drilldown" : "Simon Green", - "name" : "Simon Green" + "name" : "Simon Green", + "y" : 3 }, { "drilldown" : "Simon Proctor", @@ -76,23 +68,31 @@ "name" : "Simon Proctor" }, { - "name" : "Stuart Little", "y" : 4, + "name" : "Stuart Little", "drilldown" : "Stuart Little" }, { - "name" : "Ulrich Rieke", + "drilldown" : "Ulrich Rieke", "y" : 4, - "drilldown" : "Ulrich Rieke" + "name" : "Ulrich Rieke" }, { - "name" : "W. Luis Mochan", "drilldown" : "W. Luis Mochan", - "y" : 3 + "y" : 3, + "name" : "W. Luis Mochan" } - ] + ], + "name" : "The Weekly Challenge - 123", + "colorByPoint" : 1 } ], + "chart" : { + "type" : "column" + }, + "legend" : { + "enabled" : 0 + }, "drilldown" : { "series" : [ { @@ -106,8 +106,8 @@ ] }, { - "name" : "Cheok-Yin Fung", "id" : "Cheok-Yin Fung", + "name" : "Cheok-Yin Fung", "data" : [ [ "Perl", @@ -116,8 +116,6 @@ ] }, { - "id" : "Dave Jacoby", - "name" : "Dave Jacoby", "data" : [ [ "Perl", @@ -127,7 +125,9 @@ "Blog", 2 ] - ] + ], + "name" : "Dave Jacoby", + "id" : "Dave Jacoby" }, { "data" : [ @@ -136,11 +136,10 @@ 2 ] ], - "id" : "E. Choroba", - "name" : "E. Choroba" + "name" : "E. Choroba", + "id" : "E. Choroba" }, { - "id" : "James Smith", "name" : "James Smith", "data" : [ [ @@ -151,16 +150,17 @@ "Blog", 1 ] - ] + ], + "id" : "James Smith" }, { + "id" : "Lucas Ransan", "data" : [ [ "Raku", 2 ] ], - "id" : "Lucas Ransan", "name" : "Lucas Ransan" }, { @@ -175,25 +175,36 @@ }, { "name" : "Markus Holzer", - "id" : "Markus Holzer", "data" : [ [ "Raku", 2 ] - ] + ], + "id" : "Markus Holzer" }, { + "id" : "Mohammad S Anwar", "data" : [ [ "Perl", - 2 + 1 ] ], + "name" : "Mohammad S Anwar" + }, + { "id" : "Niels van Dijke", + "data" : [ + [ + "Perl", + 2 + ] + ], "name" : "Niels van Dijke" }, { + "name" : "Roger Bell_West", "data" : [ [ "Perl", @@ -208,12 +219,9 @@ 1 ] ], - "name" : "Roger Bell_West", "id" : "Roger Bell_West" }, { - "name" : "Simon Green", - "id" : "Simon Green", "data" : [ [ "Perl", @@ -223,21 +231,22 @@ "Blog", 1 ] - ] + ], + "name" : "Simon Green", + "id" : "Simon Green" }, { - "name" : "Simon Proctor", "id" : "Simon Proctor", "data" : [ [ "Raku", 2 ] - ] + ], + "name" : "Simon Proctor" }, { "id" : "Stuart Little", - "name" : "Stuart Little", "data" : [ [ "Perl", @@ -247,9 +256,12 @@ "Raku", 2 ] - ] + ], + "name" : "Stuart Little" }, { + "id" : "Ulrich Rieke", + "name" : "Ulrich Rieke", "data" : [ [ "Perl", @@ -259,9 +271,7 @@ "Raku", 2 ] - ], - "id" : "Ulrich Rieke", - "name" : "Ulrich Rieke" + ] }, { "id" : "W. Luis Mochan", @@ -279,27 +289,32 @@ } ] }, - "yAxis" : { - "title" : { - "text" : "Total Solutions" - } - }, "subtitle" : { - "text" : "[Champions: 15] Last updated at 2021-07-28 20:13:41 GMT" + "text" : "[Champions: 16] Last updated at 2021-07-28 21:33:13 GMT" + }, + "title" : { + "text" : "The Weekly Challenge - 123" }, "plotOptions" : { "series" : { + "borderWidth" : 0, "dataLabels" : { - "enabled" : 1, - "format" : "{point.y}" - }, - "borderWidth" : 0 + "format" : "{point.y}", + "enabled" : 1 + } } }, - "chart" : { - "type" : "column" + "yAxis" : { + "title" : { + "text" : "Total Solutions" + } }, - "title" : { - "text" : "The Weekly Challenge - 123" + "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 + }, + "xAxis" : { + "type" : "category" } } diff --git a/stats/pwc-language-breakdown-summary.json b/stats/pwc-language-breakdown-summary.json index 8aa2c712a7..4b930acfde 100644 --- a/stats/pwc-language-breakdown-summary.json +++ b/stats/pwc-language-breakdown-summary.json @@ -2,32 +2,11 @@ "legend" : { "enabled" : "false" }, - "tooltip" : { - "pointFormat" : "<b>{point.y:.0f}</b>" - }, - "xAxis" : { - "type" : "category", - "labels" : { - "style" : { - "fontSize" : "13px", - "fontFamily" : "Verdana, sans-serif" - } - } + "chart" : { + "type" : "column" }, "series" : [ { - "dataLabels" : { - "style" : { - "fontFamily" : "Verdana, sans-serif", - "fontSize" : "13px" - }, - "align" : "right", - "rotation" : -90, - "color" : "#FFFFFF", - "format" : "{point.y:.0f}", - "enabled" : "true", - "y" : 10 - }, "data" : [ [ "Blog", @@ -35,18 +14,30 @@ ], [ "Perl", - 5879 + 5880 ], [ "Raku", 3670 ] ], + "dataLabels" : { + "style" : { + "fontSize" : "13px", + "fontFamily" : "Verdana, sans-serif" + }, + "rotation" : -90, + "y" : 10, + "color" : "#FFFFFF", + "format" : "{point.y:.0f}", + "align" : "right", + "enabled" : "true" + }, "name" : "Contributions" } ], "subtitle" : { - "text" : "Last updated at 2021-07-28 20:13:41 GMT" + "text" : "Last updated at 2021-07-28 21:33:13 GMT" }, "yAxis" : { "min" : 0, @@ -57,7 +48,16 @@ "title" : { "text" : "The Weekly Challenge Contributions [2019 - 2021]" }, - "chart" : { - "type" : "column" + "xAxis" : { + "labels" : { + "style" : { + "fontSize" : "13px", + "fontFamily" : "Verdana, sans-serif" + } + }, + "type" : "category" + }, + "tooltip" : { + "pointFormat" : "<b>{point.y:.0f}</b>" } } diff --git a/stats/pwc-language-breakdown.json b/stats/pwc-language-breakdown.json index 3468f24b18..3a288867a7 100644 --- a/stats/pwc-language-breakdown.json +++ b/stats/pwc-language-breakdown.json @@ -1,4 +1,12 @@ { + "tooltip" : { + "followPointer" : "true", + "headerFormat" : "<span style=\"font-size:11px\"></span>", + "pointFormat" : "<span style=\"color:{point.color}\">Challenge {point.name}</span>: <b>{point.y:f}</b><br/>" + }, + "xAxis" : { + "type" : "category" + }, "plotOptions" : { "series" : { "borderWidth" : 0, @@ -8,9 +16,6 @@ } } }, - "chart" : { - "type" : "column" - }, "title" : { "text" : "The Weekly Challenge Language" }, @@ -19,14 +24,11 @@ "text" : "Total Solutions" } }, - "subtitle" : { - "text" : "Click the columns to drilldown the language breakdown. Last updated at 2021-07-28 20:13:41 GMT" - }, "drilldown" : { "series" : [ { - "name" : "001", "id" : "001", + "name" : "001", "data" : [ [ "Perl", @@ -43,6 +45,7 @@ ] }, { + "name" : "002", "data" : [ [ "Perl", @@ -57,12 +60,10 @@ 10 ] ], - "name" : "002", "id" : "002" }, { "name" : "003", - "id" : "003", "data" : [ [ "Perl", @@ -76,10 +77,10 @@ "Blog", 9 ] - ] + ], + "id" : "003" }, { - "name" : "004", "id" : "004", "data" : [ [ @@ -94,11 +95,11 @@ "Blog", 10 ] - ] + ], + "name" : "004" }, { "id" : "005", - "name" : "005", "data" : [ [ "Perl", @@ -112,10 +113,10 @@ "Blog", 12 ] - ] + ], + "name" : "005" }, { - "id" : "006", "name" : "006", "data" : [ [ @@ -130,11 +131,11 @@ "Blog", 7 ] - ] + ], + "id" : "006" }, { "id" : "007", - "name" : "007", "data" : [ [ "Perl", @@ -148,9 +149,11 @@ "Blog", 10 ] - ] + ], + "name" : "007" }, { + "name" : "008", "data" : [ [ "Perl", @@ -165,7 +168,6 @@ 12 ] ], - "name" : "008", "id" : "008" }, { @@ -201,10 +203,11 @@ 11 ] ], - "id" : "010", - "name" : "010" + "name" : "010", + "id" : "010" }, { + "id" : "011", "data" : [ [ "Perl", @@ -219,12 +222,9 @@ 10 ] ], - "id" : "011", "name" : "011" }, { - "name" : "012", - "id" : "012", "data" : [ [ "Perl", @@ -238,7 +238,9 @@ "Blog", 11 ] - ] + ], + "name" : "012", + "id" : "012" }, { "data" : [ @@ -259,6 +261,7 @@ "id" : "013" }, { + "id" : "014", "data" : [ [ "Perl", @@ -273,8 +276,7 @@ 15 ] ], - "name" : "014", - "id" : "014" + "name" : "014" }, { "data" : [ @@ -291,8 +293,8 @@ 15 ] ], - "id" : "015", - "name" : "015" + "name" : "015", + "id" : "015" }, { "data" : [ @@ -314,7 +316,6 @@ }, { "id" : "017", - "name" : "017", "data" : [ [ "Perl", @@ -328,11 +329,10 @@ "Blog", 12 ] - ] + ], + "name" : "017" }, { - "name" : "018", - "id" : "018", "data" : [ [ "Perl", @@ -346,10 +346,11 @@ "Blog", 14 ] - ] + ], + "name" : "018", + "id" : "018" }, { - "id" : "019", "name" : "019", "data" : [ [ @@ -364,9 +365,11 @@ "Blog", 13 ] - ] + ], + "id" : "019" }, { + "name" : "020", "data" : [ [ "Perl", @@ -381,12 +384,9 @@ 13 ] ], - "name" : "020", "id" : "020" }, { - "name" : "021", - "id" : "021", "data" : [ [ "Perl", @@ -400,9 +400,12 @@ "Blog", 10 ] - ] + ], + "name" : "021", + "id" : "021" }, { + "name" : "022", "data" : [ [ "Perl", @@ -417,10 +420,10 @@ 10 ] ], - "id" : "022", - "name" : "022" + "id" : "022" }, { + "name" : "023", "data" : [ [ "Perl", @@ -435,10 +438,10 @@ 12 ] ], - "id" : "023", - "name" : "023" + "id" : "023" }, { + "id" : "024", "data" : [ [ "Perl", @@ -453,11 +456,9 @@ 11 ] ], - "id" : "024", "name" : "024" }, { - "name" : "025", "id" : "025", "data" : [ [ @@ -472,11 +473,11 @@ "Blog", 12 ] - ] + ], + "name" : "025" }, { "id" : "026", - "name" : "026", "data" : [ [ "Perl", @@ -490,10 +491,10 @@ "Blog", 10 ] - ] + ], + "name" : "026" }, { - "name" : "027", "id" : "027", "data" : [ [ @@ -508,11 +509,12 @@ "Blog", 9 ] - ] + ], + "name" : "027" }, { - "name" : "028", "id" : "028", + "name" : "028", "data" : [ [ "Perl", @@ -529,6 +531,8 @@ ] }, { + "id" : "029", + "name" : "029", "data" : [ [ "Perl", @@ -542,13 +546,11 @@ "Blog", 12 ] - ], - "id" : "029", - "name" : "029" + ] }, { - "name" : "030", "id" : "030", + "name" : "030", "data" : [ [ "Perl", @@ -566,7 +568,6 @@ }, { "name" : "031", - "id" : "031", "data" : [ [ "Perl", @@ -580,7 +581,8 @@ "Blog", 9 ] - ] + ], + "id" : "031" }, { "data" : [ @@ -619,8 +621,6 @@ "id" : "033" }, { - "name" : "034", - "id" : "034", "data" : [ [ "Perl", @@ -634,7 +634,9 @@ "Blog", 11 ] - ] + ], + "name" : "034", + "id" : "034" }, { "data" : [ @@ -651,8 +653,8 @@ 9 ] ], - "id" : "035", - "name" : "035" + "name" : "035", + "id" : "035" }, { "data" : [ @@ -673,8 +675,8 @@ "id" : "036" }, { - "name" : "037", "id" : "037", + "name" : "037", "data" : [ [ "Perl", @@ -691,7 +693,6 @@ ] }, { - "id" : "038", "name" : "038", "data" : [ [ @@ -706,11 +707,10 @@ "Blog", 12 ] - ] + ], + "id" : "038" }, { - "name" : "039", - "id" : "039", "data" : [ [ "Perl", @@ -724,10 +724,11 @@ "Blog", 12 ] - ] + ], + "name" : "039", + "id" : "039" }, { - "id" : "040", "name" : "040", "data" : [ [ @@ -742,9 +743,12 @@ "Blog", 10 ] - ] + ], + "id" : "040" }, { + "id" : "041", + "name" : "041", "data" : [ [ "Perl", @@ -758,13 +762,11 @@ "Blog", 9 ] - ], - "id" : "041", - "name" : "041" + ] }, { - "name" : "042", "id" : "042", + "name" : "042", "data" : [ [ "Perl", @@ -800,7 +802,6 @@ }, { "name" : "044", - "id" : "044", "data" : [ [ "Perl", @@ -814,11 +815,12 @@ "Blog", 11 ] - ] + ], + "id" : "044" }, { - "name" : "045", "id" : "045", + "name" : "045", "data" : [ [ "Perl", @@ -835,6 +837,7 @@ ] }, { + "id" : "046", "data" : [ [ "Perl", @@ -849,10 +852,11 @@ 10 ] ], - "id" : "046", "name" : "046" }, { + "id" : "047", + "name" : "047", "data" : [ [ "Perl", @@ -866,9 +870,7 @@ "Blog", 10 ] - ], - "name" : "047", - "id" : "047" + ] }, { "data" : [ @@ -885,12 +887,12 @@ 12 ] ], - "id" : "048", - "name" : "048" + "name" : "048", + "id" : "048" }, { - "name" : "049", "id" : "049", + "name" : "049", "data" : [ [ "Perl", @@ -921,12 +923,10 @@ 12 ] ], - "id" : "050", - "name" : "050" + "name" : "050", + "id" : "050" }, { - "id" : "051", - "name" : "051", "data" : [ [ "Perl", @@ -940,9 +940,12 @@ "Blog", 11 ] - ] + ], + "name" : "051", + "id" : "051" }, { + "id" : "052", "data" : [ [ "Perl", @@ -957,8 +960,7 @@ 14 ] ], - "name" : "052", - "id" : "052" + "name" : "052" }, { "id" : "053", @@ -993,10 +995,11 @@ 18 ] ], - "id" : "054", - "name" : "054" + "name" : "054", + "id" : "054" }, { + "name" : "055", "data" : [ [ "Perl", @@ -1011,12 +1014,11 @@ 14 ] ], - "name" : "055", "id" : "055" }, { - "name" : "056", "id" : "056", + "name" : "056", "data" : [ [ "Perl", @@ -1033,6 +1035,8 @@ ] }, { + "id" : "057", + "name" : "057", "data" : [ |
