From 34f1f1b033d76b957ddc508fdc480518c31c95d9 Mon Sep 17 00:00:00 2001 From: holli-holzer Date: Mon, 30 Dec 2019 13:59:01 +0100 Subject: Solutions Markus Holzer --- challenge-041/markus-holzer/perl6/ch-1.pl6 | 2 ++ challenge-041/markus-holzer/perl6/ch-2.pl6 | 1 + 2 files changed, 3 insertions(+) create mode 100644 challenge-041/markus-holzer/perl6/ch-1.pl6 create mode 100644 challenge-041/markus-holzer/perl6/ch-2.pl6 diff --git a/challenge-041/markus-holzer/perl6/ch-1.pl6 b/challenge-041/markus-holzer/perl6/ch-1.pl6 new file mode 100644 index 0000000000..ab0a5739b9 --- /dev/null +++ b/challenge-041/markus-holzer/perl6/ch-1.pl6 @@ -0,0 +1,2 @@ +use Prime::Factor; +.say for (2..50).grep( -> $n { is-prime prime-factors( $n ).elems }); \ No newline at end of file diff --git a/challenge-041/markus-holzer/perl6/ch-2.pl6 b/challenge-041/markus-holzer/perl6/ch-2.pl6 new file mode 100644 index 0000000000..377434d950 --- /dev/null +++ b/challenge-041/markus-holzer/perl6/ch-2.pl6 @@ -0,0 +1 @@ +.say for (1, 1, * + * + 1 ... *)[^20]; -- cgit From 631f21b2669ea36e84e4ce373dc29bef250b1a16 Mon Sep 17 00:00:00 2001 From: Ryan Thompson Date: Fri, 3 Jan 2020 08:37:01 -0600 Subject: Week 41 solutions and blogs --- challenge-041/ryan-thompson/blog.txt | 1 + challenge-041/ryan-thompson/blog1.txt | 1 + challenge-041/ryan-thompson/perl5/ch-1.pl | 61 +++++++++++++++++++++++++++++++ challenge-041/ryan-thompson/perl5/ch-2.pl | 38 +++++++++++++++++++ challenge-041/ryan-thompson/perl6/ch-1.p6 | 32 ++++++++++++++++ challenge-041/ryan-thompson/perl6/ch-2.p6 | 21 +++++++++++ 6 files changed, 154 insertions(+) create mode 100644 challenge-041/ryan-thompson/blog.txt create mode 100644 challenge-041/ryan-thompson/blog1.txt create mode 100755 challenge-041/ryan-thompson/perl5/ch-1.pl create mode 100755 challenge-041/ryan-thompson/perl5/ch-2.pl create mode 100644 challenge-041/ryan-thompson/perl6/ch-1.p6 create mode 100644 challenge-041/ryan-thompson/perl6/ch-2.p6 diff --git a/challenge-041/ryan-thompson/blog.txt b/challenge-041/ryan-thompson/blog.txt new file mode 100644 index 0000000000..4a00b6ea62 --- /dev/null +++ b/challenge-041/ryan-thompson/blog.txt @@ -0,0 +1 @@ +http://www.ry.ca/2020/01/attractive-numbers/ diff --git a/challenge-041/ryan-thompson/blog1.txt b/challenge-041/ryan-thompson/blog1.txt new file mode 100644 index 0000000000..32f48692c5 --- /dev/null +++ b/challenge-041/ryan-thompson/blog1.txt @@ -0,0 +1 @@ +http://www.ry.ca/2020/01/leonardo-numbers/ diff --git a/challenge-041/ryan-thompson/perl5/ch-1.pl b/challenge-041/ryan-thompson/perl5/ch-1.pl new file mode 100755 index 0000000000..50418677b7 --- /dev/null +++ b/challenge-041/ryan-thompson/perl5/ch-1.pl @@ -0,0 +1,61 @@ +#!/usr/bin/env perl +# +# ch-1.pl - Attractive numbers, done badly! +# +# Ryan Thompson + +use 5.010; +use warnings; +use strict; +no warnings 'uninitialized'; + +# Here is how I'd normally tackle this problem: +# use Math::Prime::Util ':all'; +# say for grep { is_prime( factor($_) ) } 1..50; + +my @primes50 = primes_to(50); +my %primes50 = map { $_ => 1 } @primes50; +my @attractive = grep { $primes50{ prime_div_mult($_) } } 1..50; + +say for @attractive; + +# Check our results against https://oeis.org/A063989 +if ($ARGV[0] eq '--test') { + use Test::More; + my @oeis = (4, 6, 8, 9, 10, 12, 14, 15, 18, 20, 21, 22, 25, 26, 27, 28, + 30, 32, 33, 34, 35, 38, 39, 42, 44, 45, 46, 48, 49, 50); + is_deeply \@attractive, \@oeis, "Matches published sequence"; + done_testing; +} + +# Unmodified Wilson's theorem is terrible, unless you only need tiny primes! +# Please, I beg you, use Math::Prime::Util or similar in any real code. :-) +# N is prime iff (N - 1)! % N == 0 +sub primes_to { + use bigint; + my $N = shift; + my $fac = 1; + my @r; + for my $n (2..$N) { + $fac *= $n - 1; + + push @r, $n unless ($fac + 1) % $n; + } + + @r; +} + +# Get prime divisors in multiplicity (e.g., 48 = 2, 2, 2, 2, 3) +sub prime_div_mult { + my $n = shift; + my @div; + for my $div (@primes50) { + last if $div > $n; + while ($n % $div == 0) { + $n /= $div; + push @div, $div; + } + } + + @div; +} diff --git a/challenge-041/ryan-thompson/perl5/ch-2.pl b/challenge-041/ryan-thompson/perl5/ch-2.pl new file mode 100755 index 0000000000..8026469c82 --- /dev/null +++ b/challenge-041/ryan-thompson/perl5/ch-2.pl @@ -0,0 +1,38 @@ +#!/usr/bin/env perl +# +# ch-2.pl - Leonardo numbers +# +# Ryan Thompson + +use 5.010; +use warnings; +use strict; +use Memoize; # This is a core module + +# Use core Perl module "Memoize" to store results of previous calls +# Note this is the exact same code as leo_no_memo, apart from the memoize call +sub leo_memoize { + my $n = shift; + return 1 if $n < 2; + 1 + leo_memoize($n - 1) + leo_memoize($n - 2); +} +memoize 'leo_memoize'; + +# In this case doing memoization ourselves is really easy, and turns out +# to be a surprising 777% faster than Memoize, so it's my preference. +{ + my @leo = (1, 1); + sub leo_my_memo { + my $n = shift; + $leo[$n] //= 1 + leo_my_memo($n - 1) + leo_my_memo($n - 2); + } +} + +# Building up the list iteratively is also a good solution +sub leo_to_n { + my @r = (1, 1); + push @r, $r[-1] + $r[-2] + 1 for 2..$_[0]; + @r; +} + +say for leo_to_n(20); diff --git a/challenge-041/ryan-thompson/perl6/ch-1.p6 b/challenge-041/ryan-thompson/perl6/ch-1.p6 new file mode 100644 index 0000000000..3366103d7f --- /dev/null +++ b/challenge-041/ryan-thompson/perl6/ch-1.p6 @@ -0,0 +1,32 @@ +#!/usr/bin/env perl6 + +# ch-1.p6 - Attractive numbers +# +# Ryan Thompson + +sub MAIN( Int :$max = 50 ) { + .say for (1..$max).grep: *.divisors.is-prime; +} + +# WARNING: `augment' has global scope +# https://docs.perl6.org/syntax/augment +# I'm using it here to demonstrate a unique language feature. + +use MONKEY-TYPING; + +augment class Int { + + #| Return an Array of prime divisors (with multiplicity) + method divisors returns Array { + my @div; + my $n = self; + for (2..self.sqrt).grep: *.is-prime -> $div { + while $n % $div == 0 { + $n /= $div; + @div.push: $div; + } + } + @div; + } + +} diff --git a/challenge-041/ryan-thompson/perl6/ch-2.p6 b/challenge-041/ryan-thompson/perl6/ch-2.p6 new file mode 100644 index 0000000000..4e2c2c0104 --- /dev/null +++ b/challenge-041/ryan-thompson/perl6/ch-2.p6 @@ -0,0 +1,21 @@ +#!/usr/bin/env perl6 + +# ch-2.p6 - Leonardo numbers +# +# Ryan Thompson + +use experimental :cached; + +# Cached version +sub leo( Int $n ) is cached { $n < 2 ?? 1 !! 1 + leo($n - 1) + leo($n - 2) } + +# Manually memoized solution +sub leo_my_memo( Int $n ) { + state @leo = (1, 1); + @leo[$n] //= 1 + leo_my_memo($n - 1) + leo_my_memo($n - 2); +} + +# Lazily evaluated version +my @leo = 1, 1, 1+*+* ... ∞; + +.say for @leo[0..20]; -- cgit From 00bc4665c48d6671ff128dbec9e8ee91ddd60128 Mon Sep 17 00:00:00 2001 From: Mohammad S Anwar Date: Fri, 3 Jan 2020 14:42:30 +0000 Subject: - Added solutions by Ryan Thompson. --- stats/pwc-current.json | 287 ++++----- stats/pwc-language-breakdown-summary.json | 82 +-- stats/pwc-language-breakdown.json | 330 +++++------ stats/pwc-leaders.json | 956 +++++++++++++++--------------- stats/pwc-summary-1-30.json | 114 ++-- stats/pwc-summary-121-150.json | 74 +-- stats/pwc-summary-31-60.json | 50 +- stats/pwc-summary-61-90.json | 108 ++-- stats/pwc-summary-91-120.json | 124 ++-- stats/pwc-summary.json | 44 +- 10 files changed, 1096 insertions(+), 1073 deletions(-) diff --git a/stats/pwc-current.json b/stats/pwc-current.json index ff2fcb108e..c1928c9c26 100644 --- a/stats/pwc-current.json +++ b/stats/pwc-current.json @@ -1,118 +1,12 @@ { - "title" : { - "text" : "Perl Weekly Challenge - 041" - }, - "plotOptions" : { - "series" : { - "borderWidth" : 0, - "dataLabels" : { - "enabled" : 1, - "format" : "{point.y}" - } - } - }, - "subtitle" : { - "text" : "[Champions: 15] Last updated at 2020-01-02 16:05:01 GMT" - }, "chart" : { "type" : "column" }, - "xAxis" : { - "type" : "category" - }, - "tooltip" : { - "pointFormat" : "{point.name}: {point.y:f}
", - "followPointer" : 1, - "headerFormat" : "{series.name}
" - }, - "series" : [ - { - "name" : "Perl Weekly Challenge - 041", - "colorByPoint" : 1, - "data" : [ - { - "drilldown" : "Andrezgz", - "name" : "Andrezgz", - "y" : 2 - }, - { - "name" : "Arne Sommer", - "y" : 3, - "drilldown" : "Arne Sommer" - }, - { - "name" : "Duncan C. White", - "y" : 2, - "drilldown" : "Duncan C. White" - }, - { - "drilldown" : "E. Choroba", - "name" : "E. Choroba", - "y" : 2 - }, - { - "name" : "Javier Luque", - "y" : 5, - "drilldown" : "Javier Luque" - }, - { - "name" : "Jo Christian Oterhals", - "y" : 2, - "drilldown" : "Jo Christian Oterhals" - }, - { - "name" : "Kivanc Yazan", - "y" : 2, - "drilldown" : "Kivanc Yazan" - }, - { - "name" : "Laurent Rosenfeld", - "y" : 5, - "drilldown" : "Laurent Rosenfeld" - }, - { - "drilldown" : "Lubos Kolouch", - "y" : 2, - "name" : "Lubos Kolouch" - }, - { - "drilldown" : "Roger Bell West", - "name" : "Roger Bell West", - "y" : 4 - }, - { - "drilldown" : "Simon Proctor", - "name" : "Simon Proctor", - "y" : 2 - }, - { - "name" : "Steven Wilson", - "y" : 1, - "drilldown" : "Steven Wilson" - }, - { - "drilldown" : "Ulrich Rieke", - "name" : "Ulrich Rieke", - "y" : 4 - }, - { - "drilldown" : "Walt Mankowski", - "y" : 2, - "name" : "Walt Mankowski" - }, - { - "drilldown" : "Wanderdoc", - "name" : "Wanderdoc", - "y" : 2 - } - ] - } - ], "drilldown" : { "series" : [ { - "name" : "Andrezgz", "id" : "Andrezgz", + "name" : "Andrezgz", "data" : [ [ "Perl 5", @@ -122,7 +16,6 @@ }, { "name" : "Arne Sommer", - "id" : "Arne Sommer", "data" : [ [ "Perl 6", @@ -132,31 +25,31 @@ "Blog", 1 ] - ] + ], + "id" : "Arne Sommer" }, { + "id" : "Duncan C. White", "data" : [ [ "Perl 5", 2 ] ], - "name" : "Duncan C. White", - "id" : "Duncan C. White" + "name" : "Duncan C. White" }, { + "name" : "E. Choroba", "data" : [ [ "Perl 5", 2 ] ], - "id" : "E. Choroba", - "name" : "E. Choroba" + "id" : "E. Choroba" }, { "id" : "Javier Luque", - "name" : "Javier Luque", "data" : [ [ "Perl 5", @@ -170,11 +63,12 @@ "Blog", 1 ] - ] + ], + "name" : "Javier Luque" }, { - "name" : "Jo Christian Oterhals", "id" : "Jo Christian Oterhals", + "name" : "Jo Christian Oterhals", "data" : [ [ "Perl 6", @@ -183,14 +77,14 @@ ] }, { + "name" : "Kivanc Yazan", "data" : [ [ "Perl 5", 2 ] ], - "id" : "Kivanc Yazan", - "name" : "Kivanc Yazan" + "id" : "Kivanc Yazan" }, { "data" : [ @@ -211,14 +105,14 @@ "id" : "Laurent Rosenfeld" }, { + "id" : "Lubos Kolouch", + "name" : "Lubos Kolouch", "data" : [ [ "Perl 5", 2 ] - ], - "id" : "Lubos Kolouch", - "name" : "Lubos Kolouch" + ] }, { "data" : [ @@ -235,24 +129,42 @@ "id" : "Roger Bell West" }, { - "name" : "Simon Proctor", - "id" : "Simon Proctor", + "id" : "Ryan Thompson", + "name" : "Ryan Thompson", "data" : [ + [ + "Perl 5", + 2 + ], [ "Perl 6", 2 + ], + [ + "Blog", + 2 ] ] }, { + "name" : "Simon Proctor", + "data" : [ + [ + "Perl 6", + 2 + ] + ], + "id" : "Simon Proctor" + }, + { + "id" : "Steven Wilson", "data" : [ [ "Perl 5", 1 ] ], - "name" : "Steven Wilson", - "id" : "Steven Wilson" + "name" : "Steven Wilson" }, { "id" : "Ulrich Rieke", @@ -269,33 +181,144 @@ ] }, { - "name" : "Walt Mankowski", - "id" : "Walt Mankowski", "data" : [ [ "Perl 5", 2 ] - ] + ], + "name" : "Walt Mankowski", + "id" : "Walt Mankowski" }, { "id" : "Wanderdoc", - "name" : "Wanderdoc", "data" : [ [ "Perl 5", 2 ] - ] + ], + "name" : "Wanderdoc" } ] }, + "plotOptions" : { + "series" : { + "borderWidth" : 0, + "dataLabels" : { + "enabled" : 1, + "format" : "{point.y}" + } + } + }, + "legend" : { + "enabled" : 0 + }, + "subtitle" : { + "text" : "[Champions: 16] Last updated at 2020-01-03 14:42:06 GMT" + }, + "xAxis" : { + "type" : "category" + }, "yAxis" : { "title" : { "text" : "Total Solutions" } }, - "legend" : { - "enabled" : 0 + "title" : { + "text" : "Perl Weekly Challenge - 041" + }, + "series" : [ + { + "name" : "Perl Weekly Challenge - 041", + "data" : [ + { + "name" : "Andrezgz", + "y" : 2, + "drilldown" : "Andrezgz" + }, + { + "name" : "Arne Sommer", + "y" : 3, + "drilldown" : "Arne Sommer" + }, + { + "name" : "Duncan C. White", + "y" : 2, + "drilldown" : "Duncan C. White" + }, + { + "y" : 2, + "name" : "E. Choroba", + "drilldown" : "E. Choroba" + }, + { + "drilldown" : "Javier Luque", + "name" : "Javier Luque", + "y" : 5 + }, + { + "name" : "Jo Christian Oterhals", + "y" : 2, + "drilldown" : "Jo Christian Oterhals" + }, + { + "y" : 2, + "name" : "Kivanc Yazan", + "drilldown" : "Kivanc Yazan" + }, + { + "name" : "Laurent Rosenfeld", + "y" : 5, + "drilldown" : "Laurent Rosenfeld" + }, + { + "drilldown" : "Lubos Kolouch", + "name" : "Lubos Kolouch", + "y" : 2 + }, + { + "y" : 4, + "name" : "Roger Bell West", + "drilldown" : "Roger Bell West" + }, + { + "y" : 6, + "name" : "Ryan Thompson", + "drilldown" : "Ryan Thompson" + }, + { + "name" : "Simon Proctor", + "y" : 2, + "drilldown" : "Simon Proctor" + }, + { + "drilldown" : "Steven Wilson", + "name" : "Steven Wilson", + "y" : 1 + }, + { + "name" : "Ulrich Rieke", + "y" : 4, + "drilldown" : "Ulrich Rieke" + }, + { + "name" : "Walt Mankowski", + "y" : 2, + "drilldown" : "Walt Mankowski" + }, + { + "name" : "Wanderdoc", + "y" : 2, + "drilldown" : "Wanderdoc" + } + ], + "colorByPoint" : 1 + } + ], + "tooltip" : { + "pointFormat" : "{point.name}: {point.y:f}
", + "followPointer" : 1, + "headerFormat" : "{series.name}
" } } diff --git a/stats/pwc-language-breakdown-summary.json b/stats/pwc-language-breakdown-summary.json index 0be27c79f0..8aa95da2e2 100644 --- a/stats/pwc-language-breakdown-summary.json +++ b/stats/pwc-language-breakdown-summary.json @@ -1,63 +1,63 @@ { + "yAxis" : { + "title" : { + "text" : null + }, + "min" : 0 + }, + "title" : { + "text" : "Perl Weekly Challenge Contributions - 2019" + }, + "tooltip" : { + "pointFormat" : "{point.y:.0f}" + }, + "chart" : { + "type" : "column" + }, + "legend" : { + "enabled" : "false" + }, + "xAxis" : { + "labels" : { + "style" : { + "fontFamily" : "Verdana, sans-serif", + "fontSize" : "13px" + } + }, + "type" : "category" + }, + "subtitle" : { + "text" : "Last updated at 2020-01-03 14:42:23 GMT" + }, "series" : [ { + "name" : "Contributions", "dataLabels" : { - "enabled" : "true", - "color" : "#FFFFFF", + "rotation" : -90, "align" : "right", + "format" : "{point.y:.0f}", + "enabled" : "true", "style" : { "fontFamily" : "Verdana, sans-serif", "fontSize" : "13px" }, - "format" : "{point.y:.0f}", - "y" : 10, - "rotation" : -90 + "color" : "#FFFFFF", + "y" : 10 }, "data" : [ [ "Blog", - 439 + 441 ], [ "Perl 5", - 1677 + 1679 ], [ "Perl 6", - 1006 + 1008 ] - ], - "name" : "Contributions" + ] } - ], - "legend" : { - "enabled" : "false" - }, - "title" : { - "text" : "Perl Weekly Challenge Contributions - 2019" - }, - "xAxis" : { - "labels" : { - "style" : { - "fontSize" : "13px", - "fontFamily" : "Verdana, sans-serif" - } - }, - "type" : "category" - }, - "chart" : { - "type" : "column" - }, - "subtitle" : { - "text" : "Last updated at 2020-01-02 16:05:20 GMT" - }, - "tooltip" : { - "pointFormat" : "{point.y:.0f}" - }, - "yAxis" : { - "title" : { - "text" : null - }, - "min" : 0 - } + ] } diff --git a/stats/pwc-language-breakdown.json b/stats/pwc-language-breakdown.json index 27a0bb48d2..f924c85497 100644 --- a/stats/pwc-language-breakdown.json +++ b/stats/pwc-language-breakdown.json @@ -1,72 +1,59 @@ { - "tooltip" : { - "pointFormat" : "Challenge {point.name}: {point.y:f}
", - "followPointer" : "true", - "headerFormat" : "" + "legend" : { + "enabled" : "false" }, - "subtitle" : { - "text" : "Click the columns to drilldown the language breakdown. Last updated at 2020-01-02 16:05:20 GMT" + "chart" : { + "type" : "column" }, "yAxis" : { "title" : { "text" : "Total Solutions" } }, + "tooltip" : { + "headerFormat" : "", + "followPointer" : "true", + "pointFormat" : "Challenge {point.name}: {point.y:f}
" + }, "title" : { "text" : "Perl Weekly Challenge Language" }, - "chart" : { - "type" : "column" - }, - "xAxis" : { - "type" : "category" - }, - "plotOptions" : { - "series" : { - "borderWidth" : 0, - "dataLabels" : { - "enabled" : 1, - "format" : "{point.y}" - } - } - }, "series" : [ { - "colorByPoint" : "true", "data" : [ { "name" : "#001", - "drilldown" : "001", - "y" : 140 + "y" : 140, + "drilldown" : "001" }, { - "name" : "#002", "drilldown" : "002", + "name" : "#002", "y" : 108 }, { - "y" : 71, "drilldown" : "003", - "name" : "#003" + "name" : "#003", + "y" : 71 }, { "name" : "#004", - "drilldown" : "004", - "y" : 91 + "y" : 91, + "drilldown" : "004" }, { "name" : "#005", - "drilldown" : "005", - "y" : 71 + "y" : 71, + "drilldown" : "005" }, { + "drilldown" : "006", "name" : "#006", - "y" : 48, - "drilldown" : "006" + "y" : 48 }, { - "y" : 56, "drilldown" : "007", + "y" : 56, "name" : "#007" }, { @@ -76,28 +63,28 @@ }, { "drilldown" : "009", - "y" : 68, - "name" : "#009" + "name" : "#009", + "y" : 68 }, { - "name" : "#010", "drilldown" : "010", + "name" : "#010", "y" : 60 }, { "y" : 79, - "drilldown" : "011", - "name" : "#011" + "name" : "#011", + "drilldown" : "011" }, { - "y" : 83, "drilldown" : "012", - "name" : "#012" + "name" : "#012", + "y" : 83 }, { - "y" : 76, "drilldown" : "013", - "name" : "#013" + "name" : "#013", + "y" : 76 }, { "name" : "#014", @@ -105,24 +92,24 @@ "drilldown" : "014" }, { - "name" : "#015", "drilldown" : "015", - "y" : 93 + "y" : 93, + "name" : "#015" }, { - "drilldown" : "016", "y" : 66, - "name" : "#016" + "name" : "#016", + "drilldown" : "016" }, { + "drilldown" : "017", "name" : "#017", - "y" : 79, - "drilldown" : "017" + "y" : 79 }, { - "y" : 76, "drilldown" : "018", - "name" : "#018" + "name" : "#018", + "y" : 76 }, { "name" : "#019", @@ -131,63 +118,63 @@ }, { "y" : 95, - "drilldown" : "020", - "name" : "#020" + "name" : "#020", + "drilldown" : "020" }, { + "name" : "#021", "y" : 67, - "drilldown" : "021", - "name" : "#021" + "drilldown" : "021" }, { - "name" : "#022", + "drilldown" : "022", "y" : 63, - "drilldown" : "022" + "name" : "#022" }, { + "name" : "#023", "y" : 91, - "drilldown" : "023", - "name" : "#023" + "drilldown" : "023" }, { "drilldown" : "024", - "y" : 70, - "name" : "#024" + "name" : "#024", + "y" : 70 }, { - "y" : 55, "drilldown" : "025", - "name" : "#025" + "name" : "#025", + "y" : 55 }, { "drilldown" : "026", - "y" : 70, - "name" : "#026" + "name" : "#026", + "y" : 70 }, { - "drilldown" : "027", "y" : 58, - "name" : "#027" + "name" : "#027", + "drilldown" : "027" }, { "name" : "#028", - "drilldown" : "028", - "y" : 78 + "y" : 78, + "drilldown" : "028" }, { + "drilldown" : "029", "name" : "#029", - "y" : 77, - "drilldown" : "029" + "y" : 77 }, { - "name" : "#030", "drilldown" : "030", + "name" : "#030", "y" : 115 }, { + "drilldown" : "031", "name" : "#031", - "y" : 87, - "drilldown" : "031" + "y" : 87 }, { "name" : "#032", @@ -196,55 +183,68 @@ }, { "drilldown" : "033", - "y" : 108, - "name" : "#033" + "name" : "#033", + "y" : 108 }, { + "drilldown" : "034", "name" : "#034", - "y" : 60, - "drilldown" : "034" + "y" : 60 }, { "name" : "#035", - "drilldown" : "035", - "y" : 60 + "y" : 60, + "drilldown" : "035" }, { + "name" : "#036", "y" : 61, - "drilldown" : "036", - "name" : "#036" + "drilldown" : "036" }, { + "name" : "#037", "y" : 63, - "drilldown" : "037", - "name" : "#037" + "drilldown" : "037" }, { - "name" : "#038", "drilldown" : "038", + "name" : "#038", "y" : 61 }, { - "y" : 60, "drilldown" : "039", + "y" : 60, "name" : "#039" }, { - "name" : "#040", "y" : 65, + "name" : "#040", "drilldown" : "040" }, { - "name" : "#041", "drilldown" : "041", - "y" : 40 + "name" : "#041", + "y" : 46 } ], + "colorByPoint" : "true", "name" : "Perl Weekly Challenge Languages" } ], - "legend" : { - "enabled" : "false" + "plotOptions" : { + "series" : { + "borderWidth" : 0, + "dataLabels" : { + "enabled" : 1, + "format" : "{point.y}" + } + } + }, + "xAxis" : { + "type" : "category" + }, + "subtitle" : { + "text" : "Click the columns to drilldown the language breakdown. Last updated at 2020-01-03 14:42:23 GMT" }, "drilldown" : { "series" : [ @@ -267,8 +267,6 @@ "name" : "001" }, { - "name" : "002", - "id" : "002", "data" : [ [ "Perl 5", @@ -282,10 +280,13 @@ "Blog", 9 ] - ] + ], + "name" : "002", + "id" : "002" }, { "name" : "003", + "id" : "003", "data" : [ [ "Perl 5", @@ -299,10 +300,11 @@ "Blog", 9 ] - ], - "id" : "003" + ] }, { + "name" : "004", + "id" : "004", "data" : [ [ "Perl 5", @@ -316,12 +318,9 @@ "Blog", 10 ] - ], - "id" : "004", - "name" : "004" + ] }, { - "name" : "005", "data" : [ [ "Perl 5", @@ -336,10 +335,10 @@ 12 ] ], + "name" : "005", "id" : "005" }, { - "id" : "006", "data" : [ [ "Perl 5", @@ -354,11 +353,12 @@ 7 ] ], - "name" : "006" + "name" : "006", + "id" : "006" }, { - "name" : "007", "id" : "007", + "name" : "007", "data" : [ [ "Perl 5", @@ -375,8 +375,8 @@ ] }, { - "name" : "008", "id" : "008", + "name" : "008", "data" : [ [ "Perl 5", @@ -393,7 +393,6 @@ ] }, { - "name" : "009", "data" : [ [ "Perl 5", @@ -408,7 +407,8 @@ 13 ] ], - "id" : "009" + "id" : "009", + "name" : "009" }, { "data" : [ @@ -425,11 +425,10 @@ 11 ] ], - "id" : "010", - "name" : "010" + "name" : "010", + "id" : "010" }, { - "id" : "011", "data" : [ [ "Perl 5", @@ -444,11 +443,12 @@ 10 ] ], - "name" : "011" + "name" : "011", + "id" : "011" }, { - "name" : "012", "id" : "012", + "name" : "012", "data" : [ [ "Perl 5", @@ -501,6 +501,7 @@ ] }, { + "id" : "015", "name" : "015", "data" : [ [ @@ -515,8 +516,7 @@ "Blog", 15 ] - ], - "id" : "015" + ] }, { "data" : [ @@ -533,12 +533,10 @@ 12 ] ], - "id" : "016", - "name" : "016" + "name" : "016", + "id" : "016" }, { - "name" : "017", - "id" : "017", "data" : [ [ "Perl 5", @@ -552,10 +550,11 @@ "Blog", 12 ] - ] + ], + "id" : "017", + "name" : "017" }, { - "id" : "018", "data" : [ [ "Perl 5", @@ -570,9 +569,12 @@ 14 ] ], - "name" : "018" + "name" : "018", + "id" : "018" }, { + "name" : "019", + "id" : "019", "data" : [ [ "Perl 5", @@ -586,12 +588,9 @@ "Blog", 13 ] - ], - "id" : "019", - "name" : "019" + ] }, { - "name" : "020", "data" : [ [ "Perl 5", @@ -606,10 +605,12 @@ 13 ] ], + "name" : "020", "id" : "020" }, { "id" : "021", + "name" : "021", "data" : [ [ "Perl 5", @@ -623,10 +624,11 @@ "Blog", 10 ] - ], - "name" : "021" + ] }, { + "id" : "022", + "name" : "022", "data" : [ [ "Perl 5", @@ -640,9 +642,7 @@ "Blog", 10 ] - ], - "id" : "022", - "name" : "022" + ] }, { "data" : [ @@ -659,11 +659,10 @@ 12 ] ], - "id" : "023", - "name" : "023" + "name" : "023", + "id" : "023" }, { - "name" : "024", "data" : [ [ "Perl 5", @@ -678,6 +677,7 @@ 11 ] ], + "name" : "024", "id" : "024" }, { @@ -717,8 +717,6 @@ ] }, { - "name" : "027", - "id" : "027", "data" : [ [ "Perl 5", @@ -732,9 +730,13 @@ "Blog", 9 ] - ] + ], + "id" : "027", + "name" : "027" }, { + "id" : "028", + "name" : "028", "data" : [ [ "Perl 5", @@ -748,12 +750,9 @@ "Blog", 9 ] - ], - "id" : "028", - "name" : "028" + ] }, { - "id" : "029", "data" : [ [ "Perl 5", @@ -768,6 +767,7 @@ 12 ] ], + "id" : "029", "name" : "029" }, { @@ -789,7 +789,6 @@ ] }, { - "id" : "031", "data" : [ [ "Perl 5", @@ -804,9 +803,11 @@ 9 ] ], - "name" : "031" + "name" : "031", + "id" : "031" }, { + "id" : "032", "name" : "032", "data" : [ [ @@ -821,10 +822,11 @@ "Blog", 10 ] - ], - "id" : "032" + ] }, { + "id" : "033", + "name" : "033", "data" : [ [ "Perl 5", @@ -838,9 +840,7 @@ "Blog", 10 ] - ], - "id" : "033", - "name" : "033" + ] }, { "data" : [ @@ -857,11 +857,10 @@ 11 ] ], - "id" : "034", - "name" : "034" + "name" : "034", + "id" : "034" }, { - "name" : "035", "data" : [ [ "Perl 5", @@ -876,10 +875,10 @@ 9 ] ], + "name" : "035", "id" : "035" }, { - "id" : "036", "data" : [ [ "Perl 5", @@ -894,11 +893,10 @@ 10 ] ], + "id" : "036", "name" : "036" }, { - "name" : "037", - "id" : "037", "data" : [ [ "Perl 5", @@ -912,9 +910,13 @@ "Blog", 9 ] - ] + ], + "name" : "037", + "id" : "037" }, { + "id" : "038", + "name" : "038", "data" : [ [ "Perl 5", @@ -928,12 +930,9 @@ "Blog", 11 ] - ], - "id" : "038", - "name" : "038" + ] }, { - "name" : "039", "data" : [ [ "Perl 5", @@ -948,7 +947,8 @@ 12 ] ], - "id" : "039" + "id" : "039", + "name" : "039" }, { "data" : [ @@ -965,26 +965,26 @@ 8 ] ], - "id" : "040", - "name" : "040" + "name" : "040", + "id" : "040" }, { "data" : [ [ "Perl 5", - 23 + 25 ], [ "Perl 6", - 14 + 16 ], [ "Blog", - 3 + 5 ] ], - "id" : "041", - "name" : "041" + "name" : "041", + "id" : "041" } ] } diff --git a/stats/pwc-leaders.json b/stats/pwc-leaders.json index a619553e4d..35e59c6d87 100644 --- a/stats/pwc-leaders.json +++ b/stats/pwc-leaders.json @@ -2,20 +2,300 @@ "title" : { "text" : "Perl Weekly Challenge Leaders (TOP 50)" }, - "xAxis" : { - "type" : "category" + "legend" : { + "enabled" : "false" + }, + "subtitle" : { + "text" : "Click the columns to drilldown the score breakdown. Last updated at 2020-01-03 14:42:16 GMT" + }, + "tooltip" : { + "headerFormat" : "", + "followPointer" : "true", + "pointFormat" : "{point.name}: {point.y:f}
" + }, + "yAxis" : { + "title" : { + "text" : "Total Score" + } }, "chart" : { "type" : "column" }, - "legend" : { - "enabled" : "false" + "series" : [ + { + "colorByPoint" : "true", + "name" : "Perl Weekly Challenge Leaders", + "data" : [ + { + "drilldown" : "Laurent Rosenfeld", + "y" : 510, + "name" : "#1: Laurent Rosenfeld" + }, + { + "y" : 330, + "drilldown" : "Joelle Maslak", + "name" : "#2: Joelle Maslak" + }, + { + "name" : "#3: Jaldhar H. Vyas", + "y" : 326, + "drilldown" : "Jaldhar H. Vyas" + }, + { + "name" : "#4: Ruben Westerberg", + "y" : 316, + "drilldown" : "Ruben Westerberg" + }, + { + "name" : "#5: Adam Russell", + "y" : 268, + "drilldown" : "Adam Russell" + }, + { + "name" : "#6: Arne Sommer", + "y" : 252, + "drilldown" : "Arne Sommer" + }, + { + "drilldown" : "Roger Bell West", + "y" : 220, + "name" : "#7: Roger Bell West" + }, + { + "name" : "#8: E. Choroba", + "drilldown" : "E. Choroba", + "y" : 218 + }, + { + "name" : "#9: Athanasius", + "y" : 208, + "drilldown" : "Athanasius" + }, + { + "y" : 162, + "drilldown" : "Kian-Meng Ang", + "name" : "#10: Kian-Meng Ang" + }, + { + "drilldown" : "Andrezgz", + "y" : 160, + "name" : "#11: Andrezgz" + }, + { + "name" : "#12: Simon Proctor", + "drilldown" : "Simon Proctor", + "y" : 156 + }, + { + "drilldown" : "Duncan C. White", + "y" : 144, + "name" : "#13: Duncan C. White" + }, + { + "name" : "#14: Dave Jacoby", + "y" : 132, + "drilldown" : "Dave Jacoby" + }, + { + "name" : "#15: Steven Wilson", + "y" : 126, + "drilldown" : "Steven Wilson" + }, + { + "y" : 114, + "drilldown" : "Yet Ebreo", + "name" : "#16: Yet Ebreo" + }, + { + "name" : "#17: Javier Luque", + "drilldown" : "Javier Luque", + "y" : 110 + }, + { + "name" : "#18: Kevin Colyer", + "y" : 108, + "drilldown" : "Kevin Colyer" + }, + { + "name" : "#19: Duane Powell", + "y" : 104, + "drilldown" : "Duane Powell" + }, + { + "y" : 102, + "drilldown" : "Ryan Thompson", + "name" : "#20: Ryan Thompson" + }, + { + "y" : 96, + "drilldown" : "Francis Whittle", + "name" : "#21: Francis Whittle" + }, + { + "y" : 88, + "drilldown" : "Feng Chang", + "name" : "#22: Feng Chang" + }, + { + "name" : "#23: Noud Aldenhoven", + "drilldown" : "Noud Aldenhoven", + "y" : 86 + }, + { + "drilldown" : "Lubos Kolouch", + "y" : 84, + "name" : "#24: Lubos Kolouch" + }, + { + "name" : "#25: Daniel Mantovani", + "y" : 82, + "drilldown" : "Daniel Mantovani" + }, + { + "drilldown" : "Mark Senn", + "y" : 80, + "name" : "#26: Mark Senn" + }, + { + "drilldown" : "Colin Crain", + "y" : 76, + "name" : "#27: Colin Crain" + }, + { + "drilldown" : "Burkhard Nickels", + "y" : 74, + "name" : "#28: Burkhard Nickels" + }, + { + "y" : 72, + "drilldown" : "Gustavo Chaves", + "name" : "#29: Gustavo Chaves" + }, + { + "name" : "#30: Yozen Hernandez", + "drilldown" : "Yozen Hernandez", + "y" : 70 + }, + { + "drilldown" : "Guillermo Ramos", + "y" : 64, + "name" : "#31: Guillermo Ramos" + }, + { + "name" : "#32: Jo Christian Oterhals", + "y" : 60, + "drilldown" : "Jo Christian Oterhals" + }, + { + "drilldown" : "Ulrich Rieke", + "y" : 60, + "name" : "#33: Ulrich Rieke" + }, + { + "name" : "#34: Ozzy", + "drilldown" : "Ozzy", + "y" : 56 + }, + { + "name" : "#35: Dr James A. Smith", + "y" : 52, + "drilldown" : "Dr James A. Smith" + }, + { + "drilldown" : "Randy Lauen", + "y" : 52, + "name" : "#36: Randy Lauen" + }, + { + "name" : "#37: Dave Cross", + "drilldown" : "Dave Cross", + "y" : 46 + }, + { + "y" : 44, + "drilldown" : "Daniel Mita", + "name" : "#38: Daniel Mita" + }, + { + "drilldown" : "Veesh Goldman", + "y" : 44, + "name" : "#39: Veesh Goldman" + }, + { + "name" : "#40: Lars Balker", + "y" : 38, + "drilldown" : "Lars Balker" + }, + { + "name" : "#41: Markus Holzer", + "y" : 36, + "drilldown" : "Markus Holzer" + }, + { + "y" : 32, + "drilldown" : "Mark Anderson", + "name" : "#42: Mark Anderson" + }, + { + "name" : "#43: Nick Logan", + "drilldown" : "Nick Logan", + "y" : 32 + }, + { + "drilldown" : "Kivanc Yazan", + "y" : 28, + "name" : "#44: Kivanc Yazan" + }, + { + "name" : "#45: Pete Houston", + "drilldown" : "Pete Houston", + "y" : 28 + }, + { + "y" : 24, + "drilldown" : "Jaime Corchado", + "name" : "#46: Jaime Corchado" + }, + { + "drilldown" : "Lars Thegler", + "y" : 24, + "name" : "#47: Lars Thegler" + }, + { + "name" : "#48: Maxim Nechaev", + "drilldown" : "Maxim Nechaev", + "y" : 24 + }, + { + "drilldown" : "Alicia Bielsa", + "y" : 22, + "name" : "#49: Alicia Bielsa" + }, + { + "name" : "#50: Prajith P", + "drilldown" : "Prajith P", + "y" : 22 + } + ] + } + ], + "plotOptions" : { + "series" : { + "borderWidth" : 0, + "dataLabels" : { + "enabled" : 1, + "format" : "{point.y}" + } + } }, "drilldown" : { "series" : [ { - "id" : "Laurent Rosenfeld", "data" : [ + [ + "Blog", + 94 + ], [ "Perl 5", 80 @@ -23,19 +303,16 @@ [ "Perl 6", 81 - ], - [ - "Blog", - 94 ] ], + "id" : "Laurent Rosenfeld", "name" : "Laurent Rosenfeld" }, { - "name" : "Joelle Maslak", + "id" : "Joelle Maslak", "data" : [ [ - "Perl 6", + "Perl 5", 80 ], [ @@ -43,64 +320,63 @@ 5 ], [ - "Perl 5", + "Perl 6", 80 ] ], - "id" : "Joelle Maslak" + "name" : "Joelle Maslak" }, { - "name" : "Jaldhar H. Vyas", "data" : [ - [ - "Perl 5", - 71 - ], [ "Blog", 22 ], + [ + "Perl 5", + 71 + ], [ "Perl 6", 70 ] ], - "id" : "Jaldhar H. Vyas" + "id" : "Jaldhar H. Vyas", + "name" : "Jaldhar H. Vyas" }, { - "id" : "Ruben Westerberg", + "name" : "Ruben Westerberg", "data" : [ [ - "Perl 6", + "Perl 5", 79 ], [ - "Perl 5", + "Perl 6", 79 ] ], - "name" : "Ruben Westerberg" + "id" : "Ruben Westerberg" }, { - "name" : "Adam Russell", + "id" : "Adam Russell", "data" : [ - [ - "Blog", - 44 - ], [ "Perl 6", 9 ], + [ + "Blog", + 44 + ], [ "Perl 5", 81 ] ], - "id" : "Adam Russell" + "name" : "Adam Russell" }, { - "id" : "Arne Sommer", "name" : "Arne Sommer", "data" : [ [ @@ -115,15 +391,11 @@ "Perl 5", 3 ] - ] + ], + "id" : "Arne Sommer" }, { - "id" : "Roger Bell West", "data" : [ - [ - "Perl 6", - 33 - ], [ "Blog", 23 @@ -131,12 +403,16 @@ [ "Perl 5", 54 + ], + [ + "Perl 6", + 33 ] ], + "id" : "Roger Bell West", "name" : "Roger Bell West" }, { - "id" : "E. Choroba", "name" : "E. Choroba", "data" : [ [ @@ -147,15 +423,12 @@ "Perl 5", 74 ] - ] + ], + "id" : "E. Choroba" }, { - "id" : "Athanasius", + "name" : "Athanasius", "data" : [ - [ - "Blog", - 3 - ], [ "Perl 6", 38 @@ -163,13 +436,16 @@ [ "Perl 5", 63 + ], + [ + "Blog", + 3 ] ], - "name" : "Athanasius" + "id" : "Athanasius" }, { "id" : "Kian-Meng Ang", - "name" : "Kian-Meng Ang", "data" : [ [ "Blog", @@ -179,34 +455,35 @@ "Perl 5", 38 ] - ] + ], + "name" : "Kian-Meng Ang" }, { + "name" : "Andrezgz", + "id" : "Andrezgz", "data" : [ [ "Perl 5", 80 ] - ], - "name" : "Andrezgz", - "id" : "Andrezgz" + ] }, { - "id" : "Simon Proctor", "data" : [ - [ - "Perl 5", - 5 - ], [ "Perl 6", 66 ], + [ + "Perl 5", + 5 + ], [ "Blog", 7 ] ], + "id" : "Simon Proctor", "name" : "Simon Proctor" }, { @@ -224,29 +501,27 @@ "id" : "Duncan C. White" }, { + "name" : "Dave Jacoby", + "id" : "Dave Jacoby", "data" : [ - [ - "Blog", - 23 - ], [ "Perl 6", 1 ], + [ + "Blog", + 23 + ], [ "Perl 5", 42 ] - ], - "name" : "Dave Jacoby", - "id" : "Dave Jacoby" + ] }, { + "name" : "Steven Wilson", + "id" : "Steven Wilson", "data" : [ - [ - "Perl 6", - 1 - ], [ "Blog", 3 @@ -254,35 +529,33 @@ [ "Perl 5", 59 + ], + [ + "Perl 6", + 1 ] - ], - "name" : "Steven Wilson", - "id" : "Steven Wilson" + ] }, { - "id" : "Yet Ebreo", - "name" : "Yet Ebreo", "data" : [ - [ - "Blog", - 6 - ], [ "Perl 6", 21 ], + [ + "Blog", + 6 + ], [ "Perl 5", 30 ] - ] + ], + "id" : "Yet Ebreo", + "name" : "Yet Ebreo" }, { "data" : [ - [ - "Blog", - 11 - ], [ "Perl 6", 22 @@ -290,84 +563,88 @@ [ "Perl 5", 22 + ], + [ + "Blog", + 11 ] ], - "name" : "Javier Luque", - "id" : "Javier Luque" + "id" : "Javier Luque", + "name" : "Javier Luque" }, { - "name" : "Kevin Colyer", "data" : [ - [ - "Perl 5", - 2 - ], [ "Perl 6", 51 ], + [ + "Perl 5", + 2 + ], [ "Blog", 1 ] ], - "id" : "Kevin Colyer" + "id" : "Kevin Colyer", + "name" : "Kevin Colyer" }, { + "id" : "Duane Powell", "data" : [ [ "Perl 5", 52 ] ], - "name" : "Duane Powell", - "id" : "Duane Powell" + "name" : "Duane Powell" }, { - "name" : "Francis Whittle", + "name" : "Ryan Thompson", + "id" : "Ryan Thompson", "data" : [ [ - "Blog", - 9 + "Perl 6", + 21 ], [ - "Perl 6", - 39 + "Perl 5", + 26 + ], + [ + "Blog", + 4 ] - ], - "id" : "Francis Whittle" + ] }, { - "name" : "Ryan Thompson", + "name" : "Francis Whittle", "data" : [ - [ - "Blog", - 2 - ], [ "Perl 6", - 19 + 39 ], [ - "Perl 5", - 24 + "Blog", + 9 ] ], - "id" : "Ryan Thompson" + "id" : "Francis Whittle" }, { + "name" : "Feng Chang", + "id" : "Feng Chang", "data" : [ - [ - "Perl 6", - 23 - ], [ "Perl 5", 21 + ], + [ + "Perl 6", + 23 ] - ], - "name" : "Feng Chang", - "id" : "Feng Chang" + ] }, { "name" : "Noud Aldenhoven", @@ -380,14 +657,14 @@ "id" : "Noud Aldenhoven" }, { - "name" : "Lubos Kolouch", + "id" : "Lubos Kolouch", "data" : [ [ "Perl 5", 42 ] ], - "id" : "Lubos Kolouch" + "name" : "Lubos Kolouch" }, { "id" : "Daniel Mantovani", @@ -401,6 +678,7 @@ }, { "name" : "Mark Senn", + "id" : "Mark Senn", "data" : [ [ "Blog", @@ -410,26 +688,29 @@ "Perl 6", 30 ] - ], - "id" : "Mark Senn" + ] }, { + "id" : "Colin Crain", "data" : [ - [ - "Perl 5", - 36 - ], [ "Perl 6", 2 + ], + [ + "Perl 5", + 36 ] ], - "name" : "Colin Crain", - "id" : "Colin Crain" + "name" : "Colin Crain" }, { - "name" : "Burkhard Nickels", + "id" : "Burkhard Nickels", "data" : [ + [ + "Perl 5", + 22 + ], [ "Blog", 13 @@ -437,30 +718,25 @@ [ "Perl 6", 2 - ], - [ - "Perl 5", - 22 ] ], - "id" : "Burkhard Nickels" + "name" : "Burkhard Nickels" }, { - "id" : "Gustavo Chaves", "data" : [ - [ - "Blog", - 4 - ], [ "Perl 5", 32 + ], + [ + "Blog", + 4 ] ], + "id" : "Gustavo Chaves", "name" : "Gustavo Chaves" }, { - "id" : "Yozen Hernandez", "name" : "Yozen Hernandez", "data" : [ [ @@ -471,21 +747,25 @@ "Blog", 14 ] - ] + ], + "id" : "Yozen Hernandez" }, { - "name" : "Guillermo Ramos", "data" : [ [ "Perl 5", 32 ] ], - "id" : "Guillermo Ramos" + "id" : "Guillermo Ramos", + "name" : "Guillermo Ramos" }, { - "name" : "Jo Christian Oterhals", "data" : [ + [ + "Perl 6", + 17 + ], [ "Perl 5", 6 @@ -493,26 +773,23 @@ [ "Blog", 7 - ], - [ - "Perl 6", - 17 ] ], - "id" : "Jo Christian Oterhals" + "id" : "Jo Christian Oterhals", + "name" : "Jo Christian Oterhals" }, { + "name" : "Ulrich Rieke", "data" : [ - [ - "Perl 5", - 12 - ], [ "Perl 6", 18 + ], + [ + "Perl 5", + 12 ] ], - "name" : "Ulrich Rieke", "id" : "Ulrich Rieke" }, { @@ -526,7 +803,6 @@ "name" : "Ozzy" }, { - "name" : "Dr James A. Smith", "data" : [ [ "Perl 6", @@ -537,11 +813,11 @@ 16 ] ], - "id" : "Dr James A. Smith" + "id" : "Dr James A. Smith", + "name" : "Dr James A. Smith" }, { "id" : "Randy Lauen", - "name" : "Randy Lauen", "data" : [ [ "Perl 6", @@ -551,23 +827,25 @@ "Perl 5", 9 ] - ] + ], + "name" : "Randy Lauen" }, { "id" : "Dave Cross", "data" : [ - [ - "Perl 5", - 21 - ], [ "Blog", 2 + ], + [ + "Perl 5", + 21 ] ], "name" : "Dave Cross" }, { + "name" : "Daniel Mita", "id" : "Daniel Mita", "data" : [ [ @@ -578,112 +856,111 @@ "Perl 5", 3 ] - ], - "name" : "Daniel Mita" + ] }, { - "id" : "Veesh Goldman", - "name" : "Veesh Goldman", "data" : [ [ "Blog", - 3 - ], - [ -