diff options
| -rw-r--r-- | challenge-055/mohammad-anwar/raku/ch-1.p6 | 58 | ||||
| -rw-r--r-- | challenge-055/mohammad-anwar/raku/ch-1a.p6 | 58 | ||||
| -rw-r--r-- | stats/pwc-current.json | 162 | ||||
| -rw-r--r-- | stats/pwc-language-breakdown-summary.json | 62 | ||||
| -rw-r--r-- | stats/pwc-language-breakdown.json | 462 | ||||
| -rw-r--r-- | stats/pwc-leaders.json | 394 | ||||
| -rw-r--r-- | stats/pwc-summary-1-30.json | 40 | ||||
| -rw-r--r-- | stats/pwc-summary-121-150.json | 38 | ||||
| -rw-r--r-- | stats/pwc-summary-151-180.json | 44 | ||||
| -rw-r--r-- | stats/pwc-summary-31-60.json | 114 | ||||
| -rw-r--r-- | stats/pwc-summary-61-90.json | 40 | ||||
| -rw-r--r-- | stats/pwc-summary-91-120.json | 24 | ||||
| -rw-r--r-- | stats/pwc-summary.json | 358 |
13 files changed, 987 insertions, 867 deletions
diff --git a/challenge-055/mohammad-anwar/raku/ch-1.p6 b/challenge-055/mohammad-anwar/raku/ch-1.p6 new file mode 100644 index 0000000000..1e7ac45a29 --- /dev/null +++ b/challenge-055/mohammad-anwar/raku/ch-1.p6 @@ -0,0 +1,58 @@ +#!/usr/bin/env perl6 + +use v6.c; + +multi sub MAIN(*@) is hidden-from-USAGE { + say $*USAGE; + say "\nERROR: Invalid binary string !!!"; +} + +multi sub MAIN(Str :$binary-str where { m/^ <[01]>+ $/ }) { + say ($binary-str, flip-binary($binary-str)).join(" => "); +} + +sub flip-binary(Str $binary-str) { + + my %result; + my $size = $binary-str.chars; + for 1 .. $size -> $left { + for $left .. $size -> $right { + my $_binary-str = $binary-str; + for $left .. $right -> $i is copy { + --$i; + my $c = $_binary-str.substr($i, 1); + $c = ($c eq "1") ?? (0) !! (1); + $_binary-str.substr-rw($i, 1) = $c; + } + + my $k = sprintf("%s (%s,%s)", $_binary-str, $left, $right); + my $v = $_binary-str.comb("1").elems; + %result{$k} = $v; + } + } + + return flipped-binary(%result); +} + +sub flipped-binary(%result) { + + my Int $value; + my @r; + for %result.sort({ $^b.value <=> $^a.value || $^a.key cmp $^b.key }) -> $pair { + + my $_k = $pair.keys; + my $_v = $pair.values.Str.Int; + + if defined $value { + if $_v == $value { + push @r, $_k; + } + } + else { + $value = $_v; + push @r, $_k; + } + } + + return @r.join(" | "); +} diff --git a/challenge-055/mohammad-anwar/raku/ch-1a.p6 b/challenge-055/mohammad-anwar/raku/ch-1a.p6 new file mode 100644 index 0000000000..500878bbcf --- /dev/null +++ b/challenge-055/mohammad-anwar/raku/ch-1a.p6 @@ -0,0 +1,58 @@ +#!/usr/bin/env perl6 + +use Test; + +my $unit-tests = { + "10001" => "11111 (2,4)", + "10101" => "10111 (4,4) | 11011 (2,4) | 11101 (2,2)", + "00101" => "11011 (1,4) | 11101 (1,2)" +}; + +is(flip-binary($_), $unit-tests{$_}, "Tesing binary $_") for $unit-tests.keys; + +done-testing; + +sub flip-binary(Str $binary-str) { + + my %result; + my $size = $binary-str.chars; + for 1 .. $size -> $left { + for $left .. $size -> $right { + my $_binary-str = $binary-str; + for $left .. $right -> $i is copy { + --$i; + my $c = $_binary-str.substr($i, 1); + $c = ($c eq "1") ?? (0) !! (1); + $_binary-str.substr-rw($i, 1) = $c; + } + my $k = sprintf("%s (%s,%s)", $_binary-str, $left, $right); + my $v = $_binary-str.comb("1").elems; + %result{$k} = $v; + } + } + + return flipped-binary(%result); +} + +sub flipped-binary(%result) { + + my Int $v; + my @r; + for %result.sort({ $^b.value <=> $^a.value || $^a.key cmp $^b.key }) -> $pair { + + my $_k = $pair.keys; + my $_v = $pair.values.Str.Int; + + if (defined $v) { + if ($_v == $v) { + push @r, $_k; + } + } + else { + $v = $_v; + push @r, $_k; + } + } + + return @r.join(" | "); +} diff --git a/stats/pwc-current.json b/stats/pwc-current.json index 4719dd10f7..5d39ffac11 100644 --- a/stats/pwc-current.json +++ b/stats/pwc-current.json @@ -1,27 +1,49 @@ { + "plotOptions" : { + "series" : { + "dataLabels" : { + "enabled" : 1, + "format" : "{point.y}" + }, + "borderWidth" : 0 + } + }, + "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 + }, "yAxis" : { "title" : { "text" : "Total Solutions" } }, + "legend" : { + "enabled" : 0 + }, "chart" : { "type" : "column" }, + "title" : { + "text" : "Perl Weekly Challenge - 055" + }, "drilldown" : { "series" : [ { + "name" : "Andrezgz", + "id" : "Andrezgz", "data" : [ [ "Perl", 2 ] - ], - "id" : "Andrezgz", - "name" : "Andrezgz" + ] }, { "id" : "Arne Sommer", - "name" : "Arne Sommer", "data" : [ [ "Raku", @@ -31,21 +53,20 @@ "Blog", 1 ] - ] + ], + "name" : "Arne Sommer" }, { + "id" : "Dave Jacoby", "data" : [ [ "Perl", 2 ] ], - "id" : "Dave Jacoby", "name" : "Dave Jacoby" }, { - "id" : "Javier Luque", - "name" : "Javier Luque", "data" : [ [ "Perl", @@ -59,7 +80,9 @@ "Blog", 1 ] - ] + ], + "id" : "Javier Luque", + "name" : "Javier Luque" }, { "data" : [ @@ -86,28 +109,31 @@ "name" : "Luca Ferrari" }, { - "id" : "Mark Anderson", "name" : "Mark Anderson", "data" : [ [ "Raku", 2 ] - ] + ], + "id" : "Mark Anderson" }, { + "name" : "Mohammad S Anwar", + "id" : "Mohammad S Anwar", "data" : [ [ "Perl", 1 + ], + [ + "Raku", + 1 ] - ], - "name" : "Mohammad S Anwar", - "id" : "Mohammad S Anwar" + ] }, { "name" : "Roger Bell West", - "id" : "Roger Bell West", "data" : [ [ "Perl", @@ -117,7 +143,8 @@ "Raku", 1 ] - ] + ], + "id" : "Roger Bell West" }, { "data" : [ @@ -126,20 +153,22 @@ 2 ] ], - "name" : "Saif Ahmed", - "id" : "Saif Ahmed" + "id" : "Saif Ahmed", + "name" : "Saif Ahmed" }, { + "id" : "Simon Proctor", "data" : [ [ "Raku", 2 ] ], - "id" : "Simon Proctor", "name" : "Simon Proctor" }, { + "name" : "Ulrich Rieke", + "id" : "Ulrich Rieke", "data" : [ [ "Perl", @@ -149,134 +178,109 @@ "Raku", 2 ] - ], - "id" : "Ulrich Rieke", - "name" : "Ulrich Rieke" + ] }, { - "name" : "Wanderdoc", - "id" : "Wanderdoc", "data" : [ [ "Perl", 2 ] - ] + ], + "id" : "Wanderdoc", + "name" : "Wanderdoc" }, { + "id" : "Yet Ebreo", "data" : [ [ "Perl", 2 ] ], - "id" : "Yet Ebreo", "name" : "Yet Ebreo" } ] }, - "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 - }, - "title" : { - "text" : "Perl Weekly Challenge - 055" - }, - "legend" : { - "enabled" : 0 - }, "series" : [ { - "name" : "Perl Weekly Challenge - 055", + "colorByPoint" : 1, "data" : [ { "name" : "Andrezgz", - "drilldown" : "Andrezgz", - "y" : 2 + "y" : 2, + "drilldown" : "Andrezgz" }, { + "y" : 3, "name" : "Arne Sommer", - "drilldown" : "Arne Sommer", - "y" : 3 + "drilldown" : "Arne Sommer" }, { "drilldown" : "Dave Jacoby", - "name" : "Dave Jacoby", - "y" : 2 + "y" : 2, + "name" : "Dave Jacoby" }, { - "drilldown" : "Javier Luque", + "y" : 5, "name" : "Javier Luque", - "y" : 5 + "drilldown" : "Javier Luque" }, { - "y" : 2, "drilldown" : "Lubos Kolouch", - "name" : "Lubos Kolouch" + "name" : "Lubos Kolouch", + "y" : 2 }, { + "y" : 4, "name" : "Luca Ferrari", - "drilldown" : "Luca Ferrari", - "y" : 4 + "drilldown" : "Luca Ferrari" }, { - "y" : 2, "drilldown" : "Mark Anderson", + "y" : 2, "name" : "Mark Anderson" }, { - "y" : 1, "drilldown" : "Mohammad S Anwar", - "name" : "Mohammad S Anwar" + "name" : "Mohammad S Anwar", + "y" : 2 }, { + "y" : 3, "name" : "Roger Bell West", - "drilldown" : "Roger Bell West", - "y" : 3 + "drilldown" : "Roger Bell West" }, { - "drilldown" : "Saif Ahmed", + "y" : 2, "name" : "Saif Ahmed", - "y" : 2 + "drilldown" : "Saif Ahmed" }, { - "drilldown" : "Simon Proctor", "name" : "Simon Proctor", - "y" : 2 + "y" : 2, + "drilldown" : "Simon Proctor" }, { + "name" : "Ulrich Rieke", "y" : 3, - "drilldown" : "Ulrich Rieke", - "name" : "Ulrich Rieke" + "drilldown" : "Ulrich Rieke" }, { - "drilldown" : "Wanderdoc", "name" : "Wanderdoc", - "y" : 2 + "y" : 2, + "drilldown" : "Wanderdoc" }, { - "y" : 2, + "drilldown" : "Yet Ebreo", "name" : "Yet Ebreo", - "drilldown" : "Yet Ebreo" + "y" : 2 } ], - "colorByPoint" : 1 + "name" : "Perl Weekly Challenge - 055" } ], - "xAxis" : { - "type" : "category" - }, "subtitle" : { - "text" : "[Champions: 14] Last updated at 2020-04-11 16:20:44 GMT" - }, - "plotOptions" : { - "series" : { - "borderWidth" : 0, - "dataLabels" : { - "format" : "{point.y}", - "enabled" : 1 - } - } + "text" : "[Champions: 14] Last updated at 2020-04-12 01:17:07 GMT" } } diff --git a/stats/pwc-language-breakdown-summary.json b/stats/pwc-language-breakdown-summary.json index 09187f4e42..1fee3a8b4d 100644 --- a/stats/pwc-language-breakdown-summary.json +++ b/stats/pwc-language-breakdown-summary.json @@ -1,27 +1,45 @@ { - "legend" : { - "enabled" : "false" + "xAxis" : { + "labels" : { + "style" : { + "fontSize" : "13px", + "fontFamily" : "Verdana, sans-serif" + } + }, + "type" : "category" }, "tooltip" : { "pointFormat" : "<b>{point.y:.0f}</b>" }, - "title" : { - "text" : "Perl Weekly Challenge Contributions [2019 - 2020]" - }, "yAxis" : { - "min" : 0, "title" : { "text" : null - } + }, + "min" : 0 + }, + "legend" : { + "enabled" : "false" }, "chart" : { "type" : "column" }, - "subtitle" : { - "text" : "Last updated at 2020-04-11 16:20:43 GMT" + "title" : { + "text" : "Perl Weekly Challenge Contributions [2019 - 2020]" }, "series" : [ { + "dataLabels" : { + "align" : "right", + "y" : 10, + "enabled" : "true", + "rotation" : -90, + "style" : { + "fontFamily" : "Verdana, sans-serif", + "fontSize" : "13px" + }, + "color" : "#FFFFFF", + "format" : "{point.y:.0f}" + }, "name" : "Contributions", "data" : [ [ @@ -34,30 +52,12 @@ ], [ "Raku", - 1446 + 1447 ] - ], - "dataLabels" : { - "enabled" : "true", - "format" : "{point.y:.0f}", - "style" : { - "fontFamily" : "Verdana, sans-serif", - "fontSize" : "13px" - }, - "y" : 10, - "color" : "#FFFFFF", - "rotation" : -90, - "align" : "right" - } + ] } ], - "xAxis" : { - "labels" : { - "style" : { - "fontFamily" : "Verdana, sans-serif", - "fontSize" : "13px" - } - }, - "type" : "category" + "subtitle" : { + "text" : "Last updated at 2020-04-12 01:17:07 GMT" } } diff --git a/stats/pwc-language-breakdown.json b/stats/pwc-language-breakdown.json index 9068ae71a0..9cab589d12 100644 --- a/stats/pwc-language-breakdown.json +++ b/stats/pwc-language-breakdown.json @@ -1,89 +1,90 @@ { - "xAxis" : { - "type" : "category" + "subtitle" : { + "text" : "Click the columns to drilldown the language breakdown. Last updated at 2020-04-12 01:17:07 GMT" }, "series" : [ { + "name" : "Perl Weekly Challenge Languages", "data" : [ { + "drilldown" : "001", "y" : 140, - "name" : "#001", - "drilldown" : "001" + "name" : "#001" }, { "y" : 109, - "drilldown" : "002", - "name" : "#002" + "name" : "#002", + "drilldown" : "002" }, { - "drilldown" : "003", "name" : "#003", - "y" : 71 + "y" : 71, + "drilldown" : "003" }, { + "name" : "#004", "y" : 91, - "drilldown" : "004", - "name" : "#004" + "drilldown" : "004" }, { - "drilldown" : "005", "name" : "#005", - "y" : 71 + "y" : 71, + "drilldown" : "005" }, { + "name" : "#006", "y" : 52, - "drilldown" : "006", - "name" : "#006" + "drilldown" : "006" }, { "name" : "#007", - "drilldown" : "007", - "y" : 58 + "y" : 58, + "drilldown" : "007" }, { - "drilldown" : "008", + "y" : 70, "name" : "#008", - "y" : 70 + "drilldown" : "008" }, { - "y" : 68, "drilldown" : "009", - "name" : "#009" + "name" : "#009", + "y" : 68 }, { "name" : "#010", - "drilldown" : "010", - "y" : 60 + "y" : 60, + "drilldown" : "010" }, { - "y" : 79, + "drilldown" : "011", "name" : "#011", - "drilldown" : "011" + "y" : 79 }, { - "drilldown" : "012", "name" : "#012", - "y" : 83 + "y" : 83, + "drilldown" : "012" }, { - "y" : 76, "drilldown" : "013", + "y" : 76, "name" : "#013" }, { + "y" : 96, "name" : "#014", - "drilldown" : "014", - "y" : 96 + "drilldown" : "014" }, { - "name" : "#015", "drilldown" : "015", + "name" : "#015", "y" : 93 }, { - "drilldown" : "016", + "y" : 66, "name" : "#016", - "y" : 66 + "drilldown" : "016" }, { "drilldown" : "017", @@ -91,33 +92,33 @@ "y" : 79 }, { - "y" : 76, "name" : "#018", + "y" : 76, "drilldown" : "018" }, { - "name" : "#019", "drilldown" : "019", - "y" : 97 + "y" : 97, + "name" : "#019" }, { + "drilldown" : "020", "y" : 95, - "name" : "#020", - "drilldown" : "020" + "name" : "#020" }, { "drilldown" : "021", - "name" : "#021", - "y" : 67 + "y" : 67, + "name" : "#021" }, { + "drilldown" : "022", "y" : 63, - "name" : "#022", - "drilldown" : "022" + "name" : "#022" }, { - "name" : "#023", "drilldown" : "023", + "name" : "#023", "y" : 91 }, { @@ -126,19 +127,19 @@ "drilldown" : "024" }, { + "y" : 55, "name" : "#025", - "drilldown" : "025", - "y" : 55 + "drilldown" : "025" }, { - "name" : "#026", "drilldown" : "026", + "name" : "#026", "y" : 70 }, { + "drilldown" : "027", "y" : 58, - "name" : "#027", - "drilldown" : "027" + "name" : "#027" }, { "y" : 78, @@ -147,28 +148,28 @@ }, { "y" : 77, - "drilldown" : "029", - "name" : "#029" + "name" : "#029", + "drilldown" : "029" }, { - "drilldown" : "030", + "y" : 115, "name" : "#030", - "y" : 115 + "drilldown" : "030" }, { - "y" : 87, + "drilldown" : "031", "name" : "#031", - "drilldown" : "031" + "y" : 87 }, { - "name" : "#032", "drilldown" : "032", + "name" : "#032", "y" : 92 }, { + "name" : "#033", "y" : 108, - "drilldown" : "033", - "name" : "#033" + "drilldown" : "033" }, { "y" : 62, @@ -177,28 +178,28 @@ }, { "y" : 62, - "drilldown" : "035", - "name" : "#035" + "name" : "#035", + "drilldown" : "035" }, { "drilldown" : "036", - "name" : "#036", - "y" : 66 + "y" : 66, + "name" : "#036" }, { "name" : "#037", - "drilldown" : "037", - "y" : 63 + "y" : 63, + "drilldown" : "037" }, { + "drilldown" : "038", "y" : 65, - "name" : "#038", - "drilldown" : "038" + "name" : "#038" }, { - "y" : 60, + "drilldown" : "039", "name" : "#039", - "drilldown" : "039" + "y" : 60 }, { "y" : 71, @@ -207,33 +208,33 @@ }, { "name" : "#041", - "drilldown" : "041", - "y" : 74 + "y" : 74, + "drilldown" : "041" }, { - "drilldown" : "042", + "y" : 88, "name" : "#042", - "y" : 88 + "drilldown" : "042" }, { + "name" : "#043", "y" : 65, - "drilldown" : "043", - "name" : "#043" + "drilldown" : "043" }, { + "drilldown" : "044", "y" : 81, - "name" : "#044", - "drilldown" : "044" + "name" : "#044" }, { - "y" : 94, + "drilldown" : "045", "name" : "#045", - "drilldown" : "045" + "y" : 94 }, { - "drilldown" : "046", "name" : "#046", - "y" : 83 + "y" : 83, + "drilldown" : "046" }, { "drilldown" : "047", @@ -246,14 +247,14 @@ "y" : 106 }, { - "drilldown" : "049", + "y" : 85, "name" : "#049", - "y" : 85 + "drilldown" : "049" }, { - "y" : 96, + "drilldown" : "050", "name" : "#050", - "drilldown" : "050" + "y" : 96 }, { "y" : 87, @@ -262,8 +263,8 @@ }, { "y" : 88, - "drilldown" : "052", - "name" : "#052" + "name" : "#052", + "drilldown" : "052" }, { "y" : 98, @@ -272,52 +273,23 @@ }, { "name" : "#054", - "drilldown" : "054", - "y" : 95 + "y" : 95, + "drilldown" : "054" }, { "drilldown" : "055", - "name" : "#055", - "y" : 35 + "y" : 36, + "name" : "#055" } ], - "name" : "Perl Weekly Challenge Languages", "colorByPoint" : "true" } ], - "subtitle" : { - "text" : "Click the columns to drilldown the language breakdown. Last updated at 2020-04-11 16:20:44 GMT" - }, - "plotOptions" : { - "series" : { - "borderWidth" : 0, - "dataLabels" : { - "enabled" : 1, - "format" : "{point.y}" - } - } - }, - "legend" : { - "enabled" : "false" - }, - "chart" : { - "type" : "column" - }, - "yAxis" : { - "title" : { - "text" : "Total Solutions" - } - }, - "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/>" - }, "drilldown" : { "series" : [ { - "id" : "001", "name" : "001", + "id" : "001", "data" : [ [ "Perl", @@ -334,7 +306,6 @@ ] }, { - "name" : "002", "id" : "002", "data" : [ [ @@ -349,11 +320,10 @@ "Blog", 10 ] - ] + ], + "name" : "002" }, { - "id" : "003", - "name" : "003", "data" : [ [ "Perl", @@ -367,9 +337,12 @@ "Blog", 9 ] - ] + ], + "id" : "003", + "name" : "003" }, { + "name" : "004", "data" : [ [ "Perl", @@ -384,10 +357,10 @@ 10 ] ], - "name" : "004", "id" : "004" }, { + "name" : "005", "data" : [ [ "Perl", @@ -402,10 +375,10 @@ 12 ] ], - "id" : "005", - "name" : "005" + "id" : "005" }, { + "name" : "006", "data" : [ [ "Perl", @@ -420,12 +393,10 @@ 7 ] ], - "id" : "006", - "name" : "006" + "id" : "006" }, { "id" : "007", - "name" : "007", "data" : [ [ "Perl", @@ -439,11 +410,11 @@ "Blog", 10 ] - ] + ], + "name" : "007" }, { "id" : "008", - "name" : "008", "data" : [ [ "Perl", @@ -457,9 +428,11 @@ "Blog", 12 ] - ] + ], + "name" : "008" }, { + "name" : "009", "data" : [ [ "Perl", @@ -474,12 +447,9 @@ 13 ] ], - "name" : "009", "id" : "009" }, { - "id" : "010", - "name" : "010", "data" : [ [ "Perl", @@ -493,9 +463,12 @@ "Blog", 11 ] - ] + ], + "id" : "010", + "name" : "010" }, { + "name" : "011", "data" : [ [ "Perl", @@ -510,10 +483,10 @@ 10 ] ], - "name" : "011", "id" : "011" }, { + "name" : "012", "data" : [ [ "Perl", @@ -528,10 +501,11 @@ 11 ] ], - "id" : "012", - "name" : "012" + "id" : "012" }, { + "name" : "013", + "id" : "013", "data" : [ [ "Perl", @@ -545,11 +519,10 @@ "Blog", 13 ] - ], - "id" : "013", - "name" : "013" + ] }, { + "id" : "014", "data" : [ [ "Perl", @@ -564,11 +537,9 @@ 15 ] ], - "id" : "014", "name" : "014" }, { - "id" : "015", "name" : "015", "data" : [ [ @@ -583,9 +554,12 @@ "Blog", |
