diff options
| author | Mohammad S Anwar <mohammad.anwar@yahoo.com> | 2020-09-29 13:06:34 +0100 |
|---|---|---|
| committer | Mohammad S Anwar <mohammad.anwar@yahoo.com> | 2020-09-29 13:06:34 +0100 |
| commit | a45d112c43dc7f72b3cd924f62b8015b24647755 (patch) | |
| tree | 5544b878bf091c470c3de7285e5e9066e0017ef0 | |
| parent | 37e9f9b26e307f7c9d0bbaf65000c50c4b694964 (diff) | |
| download | perlweeklychallenge-club-a45d112c43dc7f72b3cd924f62b8015b24647755.tar.gz perlweeklychallenge-club-a45d112c43dc7f72b3cd924f62b8015b24647755.tar.bz2 perlweeklychallenge-club-a45d112c43dc7f72b3cd924f62b8015b24647755.zip | |
- Added Raku solution to "Smallest Positive Number" task.
| -rw-r--r-- | challenge-080/mohammad-anwar/raku/ch-1.raku | 28 | ||||
| -rw-r--r-- | challenge-080/mohammad-anwar/raku/ch-1.t | 48 | ||||
| -rw-r--r-- | stats/pwc-current.json | 226 | ||||
| -rw-r--r-- | stats/pwc-language-breakdown-summary.json | 30 | ||||
| -rw-r--r-- | stats/pwc-language-breakdown.json | 1140 | ||||
| -rw-r--r-- | stats/pwc-leaders.json | 386 | ||||
| -rw-r--r-- | stats/pwc-summary-1-30.json | 126 | ||||
| -rw-r--r-- | stats/pwc-summary-121-150.json | 118 | ||||
| -rw-r--r-- | stats/pwc-summary-151-180.json | 40 | ||||
| -rw-r--r-- | stats/pwc-summary-181-210.json | 42 | ||||
| -rw-r--r-- | stats/pwc-summary-31-60.json | 30 | ||||
| -rw-r--r-- | stats/pwc-summary-61-90.json | 42 | ||||
| -rw-r--r-- | stats/pwc-summary-91-120.json | 128 | ||||
| -rw-r--r-- | stats/pwc-summary.json | 430 |
14 files changed, 1447 insertions, 1367 deletions
diff --git a/challenge-080/mohammad-anwar/raku/ch-1.raku b/challenge-080/mohammad-anwar/raku/ch-1.raku new file mode 100644 index 0000000000..f7c1d02b5a --- /dev/null +++ b/challenge-080/mohammad-anwar/raku/ch-1.raku @@ -0,0 +1,28 @@ +#!/usr/bin/env raku + +# +# Perl Weekly Challenge - 080 +# +# Task #1: Smallest Positive Number +# +# https://perlweeklychallenge.org/blog/perl-weekly-challenge-080 +# + +use v6.d; + +sub MAIN(:@N where .all ~~ Int = (2, 3, 7, 6, 8, -1, -10, 15)) { + say smallest-positive-number(@N); +} + +sub smallest-positive-number(@n where .all ~~ Int) { + + my @positive-numbers = @n.sort.grep: { $_ > 0 }; + return 1 unless @positive-numbers.elems; + + my $i = 0; + (1 .. @positive-numbers.tail).map: -> $n { + return $n if $n < @positive-numbers[$i++] + }; + + return ++@positive-numbers.tail; +} diff --git a/challenge-080/mohammad-anwar/raku/ch-1.t b/challenge-080/mohammad-anwar/raku/ch-1.t new file mode 100644 index 0000000000..523fac682d --- /dev/null +++ b/challenge-080/mohammad-anwar/raku/ch-1.t @@ -0,0 +1,48 @@ +#!/usr/bin/env raku + +# +# Perl Weekly Challenge - 080 +# +# Task #1: Smallest Positive Number +# +# https://perlweeklychallenge.org/blog/perl-weekly-challenge-080 +# + +use Test; + +# examples from the task +is smallest-positive-number((5, 2, -2, 0)), 1, + "testing (5, 2, -2, 0)"; +is smallest-positive-number((1, 8, -1)), 2, + "testing (1, 8, -1)"; +is smallest-positive-number((2, 0, -1)), 1, + "testing (2, 0, -1)"; + +# some other test cases +is smallest-positive-number((1, 2, 0)), 3, + "testing (1, 2, 0)"; +is smallest-positive-number((-8, -7, -6)), 1, + "testing (-8, -7, -6)"; +is smallest-positive-number((3, 4, -1, 1)), 2, + "testing (3, 4, -1, 1)"; +is smallest-positive-number((2, 3, 7, 6, 8, -1, -10, 15)), 1, + "testing (2, 3, 7, 6, 8, -1, -10, 15)"; + +done-testing; + +# +# +# SUBROUTINE + +sub smallest-positive-number(@n where .all ~~ Int) { + + my @positive-numbers = @n.sort.grep: { $_ > 0 }; + return 1 unless @positive-numbers.elems; + + my $i = 0; + (1 .. @positive-numbers.tail).map: -> $n { + return $n if $n < @positive-numbers[$i++] + }; + + return ++@positive-numbers.tail; +} diff --git a/stats/pwc-current.json b/stats/pwc-current.json index 2a080f4e73..1161f9f81c 100644 --- a/stats/pwc-current.json +++ b/stats/pwc-current.json @@ -1,97 +1,25 @@ { + "xAxis" : { + "type" : "category" + }, + "yAxis" : { + "title" : { + "text" : "Total Solutions" + } + }, "plotOptions" : { "series" : { + "borderWidth" : 0, "dataLabels" : { "enabled" : 1, "format" : "{point.y}" - }, - "borderWidth" : 0 - } - }, - "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/>" - }, - "series" : [ - { - "name" : "Perl Weekly Challenge - 080", - "colorByPoint" : 1, - "data" : [ - { - "drilldown" : "Andinus", - "name" : "Andinus", - "y" : 4 - }, - { - "y" : 2, - "name" : "James Smith", - "drilldown" : "James Smith" - }, - { - "name" : "Kang-min Liu", - "y" : 4, - "drilldown" : "Kang-min Liu" - }, - { - "y" : 2, - "name" : "Lubos Kolouch", - "drilldown" : "Lubos Kolouch" - }, - { - "y" : 2, - "name" : "Mark Anderson", - "drilldown" : "Mark Anderson" - }, - { - "drilldown" : "Markus Holzer", - "name" : "Markus Holzer", - "y" : 2 - }, - { - "drilldown" : "Mohammad S Anwar", - "y" : 2, - "name" : "Mohammad S Anwar" - }, - { - "name" : "Myoungjin Jeon", - "y" : 1, - "drilldown" : "Myoungjin Jeon" - }, - { - "drilldown" : "Niels van Dijke", - "y" : 2, - "name" : "Niels van Dijke" - }, - { - "drilldown" : "Roger Bell_West", - "y" : 4, - "name" : "Roger Bell_West" - }, - { - "y" : 2, - "name" : "Shawn Wagner", - "drilldown" : "Shawn Wagner" - }, - { - "y" : 2, - "name" : "Simon Proctor", - "drilldown" : "Simon Proctor" - }, - { - "drilldown" : "Walt Mankowski", - "y" : 3, - "name" : "Walt Mankowski" - } - ] + } } - ], - "subtitle" : { - "text" : "[Champions: 13] Last updated at 2020-09-29 06:52:19 GMT" }, "drilldown" : { "series" : [ { + "id" : "Andinus", "data" : [ [ "Perl", @@ -102,22 +30,21 @@ 2 ] ], - "id" : "Andinus", "name" : "Andinus" }, { - "name" : "James Smith", "id" : "James Smith", "data" : [ [ "Perl", 2 ] - ] + ], + "name" : "James Smith" }, { - "name" : "Kang-min Liu", "id" : "Kang-min Liu", + "name" : "Kang-min Liu", "data" : [ [ "Perl", @@ -136,58 +63,62 @@ 2 ] ], - "id" : "Lubos Kolouch", - "name" : "Lubos Kolouch" + "name" : "Lubos Kolouch", + "id" : "Lubos Kolouch" }, { "id" : "Mark Anderson", - "name" : "Mark Anderson", "data" : [ [ "Raku", 2 ] - ] + ], + "name" : "Mark Anderson" }, { "id" : "Markus Holzer", - "name" : "Markus Holzer", "data" : [ [ "Raku", 2 ] - ] + ], + "name" : "Markus Holzer" }, { + "name" : "Mohammad S Anwar", "data" : [ [ "Perl", 2 + ], + [ + "Raku", + 1 ] ], - "name" : "Mohammad S Anwar", "id" : "Mohammad S Anwar" }, { + "id" : "Myoungjin Jeon", "data" : [ [ "Blog", 1 ] ], - "id" : "Myoungjin Jeon", "name" : "Myoungjin Jeon" }, { - "name" : "Niels van Dijke", "id" : "Niels van Dijke", "data" : [ [ "Perl", 2 ] - ] + ], + "name" : "Niels van Dijke" }, { "data" : [ @@ -200,30 +131,31 @@ 2 ] ], - "id" : "Roger Bell_West", - "name" : "Roger Bell_West" + "name" : "Roger Bell_West", + "id" : "Roger Bell_West" }, { + "name" : "Shawn Wagner", "data" : [ [ "Perl", 2 ] ], - "id" : "Shawn Wagner", - "name" : "Shawn Wagner" + "id" : "Shawn Wagner" }, { "id" : "Simon Proctor", - "name" : "Simon Proctor", "data" : [ [ "Raku", 2 ] - ] + ], + "name" : "Simon Proctor" }, { + "name" : "Walt Mankowski", "data" : [ [ "Perl", @@ -234,19 +166,83 @@ 1 ] ], - "name" : "Walt Mankowski", "id" : "Walt Mankowski" } ] }, - "xAxis" : { - "type" : "category" - }, - "yAxis" : { - "title" : { - "text" : "Total Solutions" + "series" : [ + { + "colorByPoint" : 1, + "data" : [ + { + "drilldown" : "Andinus", + "name" : "Andinus", + "y" : 4 + }, + { + "y" : 2, + "drilldown" : "James Smith", + "name" : "James Smith" + }, + { + "y" : 4, + "drilldown" : "Kang-min Liu", + "name" : "Kang-min Liu" + }, + { + "y" : 2, + "name" : "Lubos Kolouch", + "drilldown" : "Lubos Kolouch" + }, + { + "y" : 2, + "name" : "Mark Anderson", + "drilldown" : "Mark Anderson" + }, + { + "y" : 2, + "name" : "Markus Holzer", + "drilldown" : "Markus Holzer" + }, + { + "drilldown" : "Mohammad S Anwar", + "name" : "Mohammad S Anwar", + "y" : 3 + }, + { + "name" : "Myoungjin Jeon", + "drilldown" : "Myoungjin Jeon", + "y" : 1 + }, + { + "name" : "Niels van Dijke", + "drilldown" : "Niels van Dijke", + "y" : 2 + }, + { + "y" : 4, + "name" : "Roger Bell_West", + "drilldown" : "Roger Bell_West" + }, + { + "y" : 2, + "drilldown" : "Shawn Wagner", + "name" : "Shawn Wagner" + }, + { + "drilldown" : "Simon Proctor", + "name" : "Simon Proctor", + "y" : 2 + }, + { + "y" : 3, + "name" : "Walt Mankowski", + "drilldown" : "Walt Mankowski" + } + ], + "name" : "Perl Weekly Challenge - 080" } - }, + ], "chart" : { "type" : "column" }, @@ -255,5 +251,13 @@ }, "legend" : { "enabled" : 0 + }, + "tooltip" : { + "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/>", + "followPointer" : 1 + }, + "subtitle" : { + "text" : "[Champions: 13] Last updated at 2020-09-29 11:26:57 GMT" } } diff --git a/stats/pwc-language-breakdown-summary.json b/stats/pwc-language-breakdown-summary.json index bd6da7724c..e6b985b4d1 100644 --- a/stats/pwc-language-breakdown-summary.json +++ b/stats/pwc-language-breakdown-summary.json @@ -3,15 +3,15 @@ { "dataLabels" : { "format" : "{point.y:.0f}", + "rotation" : -90, "y" : 10, - "enabled" : "true", + "align" : "right", "style" : { - "fontFamily" : "Verdana, sans-serif", - "fontSize" : "13px" + "fontSize" : "13px", + "fontFamily" : "Verdana, sans-serif" }, "color" : "#FFFFFF", - "align" : "right", - "rotation" : -90 + "enabled" : "true" }, "data" : [ [ @@ -24,18 +24,12 @@ ], [ "Raku", - 2200 + 2201 ] ], "name" : "Contributions" } ], - "tooltip" : { - "pointFormat" : "<b>{point.y:.0f}</b>" - }, - "subtitle" : { - "text" : "Last updated at 2020-09-29 06:52:19 GMT" - }, "xAxis" : { "type" : "category", "labels" : { @@ -45,9 +39,6 @@ } } }, - "title" : { - "text" : "Perl Weekly Challenge Contributions [2019 - 2020]" - }, "yAxis" : { "min" : 0, "title" : { @@ -57,7 +48,16 @@ "chart" : { "type" : "column" }, + "title" : { + "text" : "Perl Weekly Challenge Contributions [2019 - 2020]" + }, + "tooltip" : { + "pointFormat" : "<b>{point.y:.0f}</b>" + }, "legend" : { "enabled" : "false" + }, + "subtitle" : { + "text" : "Last updated at 2020-09-29 11:26:57 GMT" } } diff --git a/stats/pwc-language-breakdown.json b/stats/pwc-language-breakdown.json index 2f73a562b0..e63ce2d872 100644 --- a/stats/pwc-language-breakdown.json +++ b/stats/pwc-language-breakdown.json @@ -1,21 +1,421 @@ { - "legend" : { - "enabled" : "false" - }, - "title" : { - "text" : "Perl Weekly Challenge Language" - }, - "chart" : { - "type" : "column" - }, - "yAxis" : { - "title" : { - "text" : "Total Solutions" + "plotOptions" : { + "series" : { + "dataLabels" : { + "enabled" : 1, + "format" : "{point.y}" + }, + "borderWidth" : 0 } }, - "xAxis" : { - "type" : "category" - }, + "series" : [ + { + "colorByPoint" : "true", + "name" : "Perl Weekly Challenge Languages", + "data" : [ + { + "name" : "#001", + "drilldown" : "001", + "y" : 142 + }, + { + "y" : 111, + "drilldown" : "002", + "name" : "#002" + }, + { + "y" : 71, + "drilldown" : "003", + "name" : "#003" + }, + { + "name" : "#004", + "drilldown" : "004", + "y" : 91 + }, + { + "drilldown" : "005", + "name" : "#005", + "y" : 72 + }, + { + "y" : 52, + "name" : "#006", + "drilldown" : "006" + }, + { + "y" : 59, + "drilldown" : "007", + "name" : "#007" + }, + { + "drilldown" : "008", + "name" : "#008", + "y" : 72 + }, + { + "name" : "#009", + "drilldown" : "009", + "y" : 70 + }, + { + "name" : "#010", + "drilldown" : "010", + "y" : 60 + }, + { + "y" : 79, + "name" : "#011", + "drilldown" : "011" + }, + { + "y" : 83, + "drilldown" : "012", + "name" : "#012" + }, + { + "y" : 78, + "drilldown" : "013", + "name" : "#013" + }, + { + "y" : 96, + "name" : "#014", + "drilldown" : "014" + }, + { + "y" : 93, + "name" : "#015", + "drilldown" : "015" + }, + { + "y" : 66, + "drilldown" : "016", + "name" : "#016" + }, + { + "drilldown" : "017", + "name" : "#017", + "y" : 79 + }, + { + "y" : 76, + "name" : "#018", + "drilldown" : "018" + }, + { + "y" : 97, + "name" : "#019", + "drilldown" : "019" + }, + { + "drilldown" : "020", + "name" : "#020", + "y" : 95 + }, + { + "y" : 67, + "name" : "#021", + "drilldown" : "021" + }, + { + "y" : 63, + "drilldown" : "022", + "name" : "#022" + }, + { + "name" : "#023", + "drilldown" : "023", + "y" : 91 + }, + { + "y" : 70, + "name" : "#024", + "drilldown" : "024" + }, + { + "y" : 55, + "name" : "#025", + "drilldown" : "025" + }, + { + "drilldown" : "026", + "name" : "#026", + "y" : 70 + }, + { + "drilldown" : "027", + "name" : "#027", + "y" : 58 + }, + { + "y" : 78, + "drilldown" : "028", + "name" : "#028" + }, + { + "drilldown" : "029", + "name" : "#029", + "y" : 77 + }, + { + "drilldown" : "030", + "name" : "#030", + "y" : 115 + }, + { + "y" : 87, + "name" : "#031", + "drilldown" : "031" + }, + { + "y" : 92, + "drilldown" : "032", + "name" : "#032" + }, + { + "name" : "#033", + "drilldown" : "033", + "y" : 108 + }, + { + "name" : "#034", + "drilldown" : "034", + "y" : 62 + }, + { + "y" : 62, + "drilldown" : "035", + "name" : "#035" + }, + { + "drilldown" : "036", + "name" : "#036", + "y" : 66 + }, + { + "y" : 65, + "drilldown" : "037", + "name" : "#037" + }, + { + "y" : 65, + "name" : "#038", + "drilldown" : "038" + }, + { + "y" : 60, + "name" : "#039", + "drilldown" : "039" + }, + { + "drilldown" : "040", + "name" : "#040", + "y" : 71 + }, + { + "name" : "#041", + "drilldown" : "041", + "y" : 74 + }, + { + "y" : 88, + "name" : "#042", + "drilldown" : "042" + }, + { + "y" : 66, + "name" : "#043", + "drilldown" : "043" + }, + { + "drilldown" : "044", + "name" : "#044", + "y" : 82 + }, + { + "name" : "#045", + "drilldown" : "045", + "y" : 94 + }, + { + "drilldown" : "046", + "name" : "#046", + "y" : 85 + }, + { + "name" : "#047", + "drilldown" : "047", + "y" : 82 + }, + { + "y" : 106, + "name" : "#048", + "drilldown" : "048" + }, + { + "y" : 85, + "drilldown" : "049", + "name" : "#049" + }, + { + "drilldown" : "050", + "name" : "#050", + "y" : 96 + }, + { + "name" : "#051", + "drilldown" : "051", + "y" : 87 + }, + { + "drilldown" : "052", + "name" : "#052", + "y" : 89 + }, + { + "name" : "#053", + "drilldown" : "053", + "y" : 99 + }, + { + "name" : "#054", + "drilldown" : "054", + "y" : 101 + }, + { + "drilldown" : "055", + "name" : "#055", + "y" : 86 + }, + { + "name" : "#056", + "drilldown" : "056", + "y" : 93 + }, + { + "name" : "#057", + "drilldown" : "057", + "y" : 78 + }, + { + "name" : "#058", + "drilldown" : "058", + "y" : 67 + }, + { + "drilldown" : "059", + "name" : "#059", + "y" : 87 + }, + { + "name" : "#060", + "drilldown" : "060", + "y" : 83 + }, + { + "y" : 79, + "drilldown" : "061", + "name" : "#061" + }, + { + "drilldown" : "062", + "name" : "#062", + "y" : 54 + }, + { + "y" : 87, + "drilldown" : "063", + "name" : "#063" + }, + { + "name" : "#064", + "drilldown" : "064", + "y" : 78 + }, + { + "name" : "#065", + "drilldown" : "065", + "y" : 71 + }, + { + "y" : 82, + "name" : "#066", + "drilldown" : "066" + }, + { + "name" : "#067", + "drilldown" : "067", + "y" : 88 + }, + { + "y" : 73, + "name" : "#068", + "drilldown" : "068" + }, + { + "name" : "#069", + "drilldown" : "069", + "y" : 81 + }, + { + "name" : "#070", + "drilldown" : "070", + "y" : 91 + }, + { + "drilldown" : "071", + "name" : "#071", + "y" : 76 + }, + { + "name" : "#072", + "drilldown" : "072", + "y" : 110 + }, + { + "drilldown" : "073", + "name" : "#073", + "y" : 108 + }, + { + "name" : "#074", + "drilldown" : "074", + "y" : 113 + }, + { + "drilldown" : "075", + "name" : "#075", + "y" : 111 + }, + { + "y" : 91, + "name" : "#076", + "drilldown" : "076" + }, + { + "drilldown" : "077", + "name" : "#077", + "y" : 94 + }, + { + "y" : 121, + "drilldown" : "078", + "name" : "#078" + }, + { + "y" : 114, + "name" : "#079", + "drilldown" : "079" + }, + { + "y" : 33, + "drilldown" : "080", + "name" : "#080" + } + ] + } + ], "drilldown" : { "series" : [ { @@ -37,8 +437,8 @@ "id" : "001" }, { - "name" : "002", "id" : "002", + "name" : "002", "data" : [ [ "Perl", @@ -56,7 +456,6 @@ }, { "id" : "003", - "name" : "003", "data" : [ [ "Perl", @@ -70,9 +469,11 @@ "Blog", 9 ] - ] + ], + "name" : "003" }, { + "id" : "004", "data" : [ [ "Perl", @@ -87,8 +488,7 @@ 10 ] ], - "name" : "004", - "id" : "004" + "name" : "004" }, { "data" : [ @@ -105,10 +505,11 @@ 12 ] ], - "id" : "005", - "name" : "005" + "name" : "005", + "id" : "005" }, { + "name" : "006", "data" : [ [ "Perl", @@ -123,8 +524,7 @@ 7 ] ], - "id" : "006", - "name" : "006" + "id" : "006" }, { "data" : [ @@ -141,11 +541,10 @@ 10 ] ], - "id" : "007", - "name" : "007" + "name" : "007", + "id" : "007" }, { - "name" : "008", "id" : "008", "data" : [ [ @@ -160,7 +559,8 @@ "Blog", 12 ] - ] + ], + "name" : "008" }, { "id" : "009", @@ -200,7 +600,6 @@ }, { "name" : "011", - "id" : "011", "data" : [ [ "Perl", @@ -214,11 +613,10 @@ "Blog", 10 ] - ] + ], + "id" : "011" }, { - "id" : "012", - "name" : "012", "data" : [ [ "Perl", @@ -232,7 +630,9 @@ "Blog", 11 ] - ] + ], + "name" : "012", + "id" : "012" }, { "data" : [ @@ -249,12 +649,10 @@ 13 ] ], - "id" : "013", - "name" : "013" + "name" : "013", + "id" : "013" }, { - "name" : "014", - "id" : "014", "data" : [ [ "Perl", @@ -268,9 +666,12 @@ "Blog", 15 ] - ] + ], + "name" : "014", + "id" : "014" }, { + "name" : "015", "data" : [ [ "Perl", @@ -285,12 +686,9 @@ 15 ] |
