From 856f56ef0cfd271b4c82090f140f65ce163ea709 Mon Sep 17 00:00:00 2001 From: Mohammad S Anwar Date: Mon, 4 May 2020 09:19:12 +0100 Subject: - Added solutions by Javier Luque. --- challenge-059/javier-luque/blog.txt | 1 + challenge-059/javier-luque/perl/ch-1.pl | 141 ++++++ challenge-059/javier-luque/perl/ch-2.pl | 32 ++ challenge-059/javier-luque/raku/ch-1.p6 | 104 ++++ challenge-059/javier-luque/raku/ch-2.p6 | 26 + stats/pwc-challenge-058.json | 434 +++++++++++++++++ stats/pwc-current.json | 427 ++--------------- stats/pwc-language-breakdown-summary.json | 66 +-- stats/pwc-language-breakdown.json | 487 ++++++++++--------- stats/pwc-leaders.json | 758 +++++++++++++++--------------- stats/pwc-summary-1-30.json | 122 ++--- stats/pwc-summary-121-150.json | 122 ++--- stats/pwc-summary-151-180.json | 70 +-- stats/pwc-summary-31-60.json | 46 +- stats/pwc-summary-61-90.json | 110 ++--- stats/pwc-summary-91-120.json | 108 ++--- stats/pwc-summary.json | 380 +++++++-------- 17 files changed, 1916 insertions(+), 1518 deletions(-) create mode 100644 challenge-059/javier-luque/blog.txt create mode 100644 challenge-059/javier-luque/perl/ch-1.pl create mode 100644 challenge-059/javier-luque/perl/ch-2.pl create mode 100644 challenge-059/javier-luque/raku/ch-1.p6 create mode 100644 challenge-059/javier-luque/raku/ch-2.p6 create mode 100644 stats/pwc-challenge-058.json diff --git a/challenge-059/javier-luque/blog.txt b/challenge-059/javier-luque/blog.txt new file mode 100644 index 0000000000..4daabaedc2 --- /dev/null +++ b/challenge-059/javier-luque/blog.txt @@ -0,0 +1 @@ +https://perlchallenges.wordpress.com/2020/05/04/perl-weekly-challenge-059/ diff --git a/challenge-059/javier-luque/perl/ch-1.pl b/challenge-059/javier-luque/perl/ch-1.pl new file mode 100644 index 0000000000..0672fdac2a --- /dev/null +++ b/challenge-059/javier-luque/perl/ch-1.pl @@ -0,0 +1,141 @@ +#!/usr/bin/perl +# Test: ./ch-1.pl +package LinkedList::Node; # Linked list +use Mouse; + +has 'value' => ( + is => 'rw', + isa => 'Maybe[Int]', + default => sub { + return undef; + } +); + +has 'next' => ( + is => 'rw', + isa => 'Maybe[LinkedList::Node]', + default => sub { + return undef + } +); + +__PACKAGE__->meta->make_immutable(); + +package LinkedList; + +use Mouse; +use feature qw /say/; +use LinkedList::Node; + +has 'first' => ( + is => 'rw', + isa => 'Maybe[LinkedList::Node]', + default => sub { + return undef + } +); + +# Create the list +sub create_list { + my ($self, @values) = @_; + my $prev_node; + + # Populate the list + for my $value (@values) { + my $node = LinkedList::Node->new(value => $value); + + # Populate first and next nodes + ($prev_node) ? + $prev_node->next($node) : + $self->first($node); + + # Next + $prev_node = $node; + } +} + +sub partition_list { + my ($self, $k) = @_; + + # Temp variables to store node locations + my $k_node_current; + my $k_node_first; + my $before_node_current; + my $before_node_first; + my $after_node_current; + my $after_node_first; + + # Loop through the nodes + my $node = $self->first; + while ($node) { + if ($node->value == $k) { + if ($k_node_current) { + $k_node_current->next($node); + $k_node_current = $node; + } else { + $k_node_first = $node; + $k_node_current = $node; + } + } + + # Process the nodex lower than k + if ($node->value < $k) { + if ($before_node_current) { + $before_node_current->next($node); + $before_node_current = $node; + } else { + $before_node_first = $node; + $before_node_current = $node; + } + } + + # Process the nodex higher than k + if ($node->value > $k) { + if ($after_node_current) { + $after_node_current->next($node); + $after_node_current = $node; + } else { + $after_node_first = $node; + $after_node_current = $node; + } + } + + $node = $node->next; + } + + # link the chains + $self->first($before_node_first); + $before_node_current->next($k_node_first); + $k_node_current->next($after_node_first); + $after_node_current->next(undef); +} + +sub display_list { + my $self = shift; + + my $node = $self->first; + my @keys; + + while ($node) { + push @keys, $node->value; + $node = $node->next; + } + + return join ' → ', @keys; +} + +__PACKAGE__->meta->make_immutable(); + +package main; + +use strict; +use warnings; +use LinkedList; + +my $ll = LinkedList->new(); +$ll->create_list(1,4,3,2,5,2); +say 'Before: ' . $ll->display_list; +$ll->partition_list(3); +say 'After: ' . $ll->display_list; + + diff --git a/challenge-059/javier-luque/perl/ch-2.pl b/challenge-059/javier-luque/perl/ch-2.pl new file mode 100644 index 0000000000..c7ea428308 --- /dev/null +++ b/challenge-059/javier-luque/perl/ch-2.pl @@ -0,0 +1,32 @@ +#!/usr/bin/perl +# Test: ./ch-2.pl 2 3 4 + +use strict; +use warnings; +use feature qw /say/; +use Algorithm::Combinatorics qw /combinations/; + +my $answer = 0; + +my $combinations = combinations(\@ARGV, 2); +while (my $v = $combinations->next) { + $answer += f(@$v); +} + +say $answer; + +sub f { + return calculate_true_bits(int(shift) ^ int(shift)); +} + +# Calculate the number of true bits +sub calculate_true_bits { + my $number = shift; + my $count = 0; + + do { + $count++ if ($number & 1); + } while ($number = $number >> 1); + + return $count; +} diff --git a/challenge-059/javier-luque/raku/ch-1.p6 b/challenge-059/javier-luque/raku/ch-1.p6 new file mode 100644 index 0000000000..ca4849b3a3 --- /dev/null +++ b/challenge-059/javier-luque/raku/ch-1.p6 @@ -0,0 +1,104 @@ +# Test: perl6 ch-1.p6 +class LinkedList::Node { + has Int $.value is rw; + has LinkedList::Node $.next is rw; +} + +class LinkedList { + has LinkedList::Node $.first is rw; + + # Create the list + method create-list(*@values) { + my $prev_node; + + # Populate the list + for @values -> $value { + my $node = LinkedList::Node.new(value => $value); + + # Populate first and next nodes + if ($prev_node) { + $prev_node.next = $node + } else { + self.first = $node; + } + + # Next node + $prev_node = $node; + } + } + + method partition_list(Int $k) { + # Temp variables to store node locations + my $k_node_current; + my $k_node_first; + my $before_node_current; + my $before_node_first; + my $after_node_current; + my $after_node_first; + + # Loop through the nodes + my $node = self.first; + while ($node) { + if ($node.value == $k) { + if ($k_node_current) { + $k_node_current.next = $node; + $k_node_current = $node; + } else { + $k_node_first = $node; + $k_node_current = $node; + } + } + + # Process the nodex lower than k + if ($node.value < $k) { + if ($before_node_current) { + $before_node_current.next = $node; + $before_node_current = $node; + } else { + $before_node_first = $node; + $before_node_current = $node; + } + } + + # Process the nodex higher than k + if ($node.value > $k) { + if ($after_node_current) { + $after_node_current.next = $node; + $after_node_current = $node; + } else { + $after_node_first = $node; + $after_node_current = $node; + } + } + + $node = $node.next; + } + + # link the chains + self.first = $before_node_first; + $before_node_current.next = $k_node_first; + $k_node_current.next = $after_node_first; + $after_node_current.next = Nil; + } + + method display-list { + my $node = self.first; + my @keys; + + while ($node) { + @keys.push($node.value); + $node = $node.next; + } + + return @keys.join(" → "); + } +} + + +sub MAIN() { + my $ll = LinkedList.new(); + $ll.create-list(1,4,3,2,5,2); + say 'Before: ' ~ $ll.display-list; + $ll.partition_list(3); + say 'After: ' ~ $ll.display-list; +} diff --git a/challenge-059/javier-luque/raku/ch-2.p6 b/challenge-059/javier-luque/raku/ch-2.p6 new file mode 100644 index 0000000000..707105dd9a --- /dev/null +++ b/challenge-059/javier-luque/raku/ch-2.p6 @@ -0,0 +1,26 @@ +# Test: perl6 ch-2.p6 2 3 4 +sub MAIN(*@ARGV) { + my @combos = @ARGV.combinations: 2; + my $answer = 0; + + for @combos -> $combo { + $answer += f($combo[0], $combo[1]); + } + + say $answer; +} + +sub f(Int $a, Int $b) { + return calculate-true-bits($a +^ $b); +} + +# Calculate the number of true bits +sub calculate-true-bits(Int $n is copy) { + my $count = 0; + + repeat { + $count++ if ($n +& 1); + } while ($n = $n +> 1); + + return $count; +} diff --git a/stats/pwc-challenge-058.json b/stats/pwc-challenge-058.json new file mode 100644 index 0000000000..d273d7872e --- /dev/null +++ b/stats/pwc-challenge-058.json @@ -0,0 +1,434 @@ +{ + "series" : [ + { + "data" : [ + { + "y" : 4, + "drilldown" : "Arne Sommer", + "name" : "Arne Sommer" + }, + { + "y" : 1, + "name" : "Cheok-Yin Fung", + "drilldown" : "Cheok-Yin Fung" + }, + { + "drilldown" : "Colin Crain", + "name" : "Colin Crain", + "y" : 4 + }, + { + "name" : "Duncan C. White", + "drilldown" : "Duncan C. White", + "y" : 2 + }, + { + "drilldown" : "E. Choroba", + "name" : "E. Choroba", + "y" : 3 + }, + { + "name" : "Jared Martin", + "drilldown" : "Jared Martin", + "y" : 3 + }, + { + "y" : 5, + "drilldown" : "Javier Luque", + "name" : "Javier Luque" + }, + { + "name" : "Jorg Sommrey", + "drilldown" : "Jorg Sommrey", + "y" : 1 + }, + { + "drilldown" : "Kevin Colyer", + "name" : "Kevin Colyer", + "y" : 1 + }, + { + "y" : 5, + "drilldown" : "Laurent Rosenfeld", + "name" : "Laurent Rosenfeld" + }, + { + "y" : 1, + "drilldown" : "Leo Manfredi", + "name" : "Leo Manfredi" + }, + { + "drilldown" : "Lubos Kolouch", + "name" : "Lubos Kolouch", + "y" : 1 + }, + { + "name" : "Luca Ferrari", + "drilldown" : "Luca Ferrari", + "y" : 4 + }, + { + "name" : "Mark Anderson", + "drilldown" : "Mark Anderson", + "y" : 4 + }, + { + "drilldown" : "Mohammad S Anwar", + "name" : "Mohammad S Anwar", + "y" : 5 + }, + { + "name" : "Roger Bell_West", + "drilldown" : "Roger Bell_West", + "y" : 2 + }, + { + "y" : 2, + "drilldown" : "Saif Ahmed", + "name" : "Saif Ahmed" + }, + { + "y" : 3, + "name" : "Shahed Nooshmand", + "drilldown" : "Shahed Nooshmand" + }, + { + "y" : 2, + "drilldown" : "Simon Proctor", + "name" : "Simon Proctor" + }, + { + "y" : 2, + "name" : "Ulrich Rieke", + "drilldown" : "Ulrich Rieke" + }, + { + "y" : 2, + "name" : "Wanderdoc", + "drilldown" : "Wanderdoc" + }, + { + "y" : 2, + "name" : "Yet Ebreo", + "drilldown" : "Yet Ebreo" + } + ], + "colorByPoint" : 1, + "name" : "Perl Weekly Challenge - 058" + } + ], + "title" : { + "text" : "Perl Weekly Challenge - 058" + }, + "chart" : { + "type" : "column" + }, + "xAxis" : { + "type" : "category" + }, + "plotOptions" : { + "series" : { + "borderWidth" : 0, + "dataLabels" : { + "format" : "{point.y}", + "enabled" : 1 + } + } + }, + "subtitle" : { + "text" : "[Champions: 22] Last updated at 2020-05-03 23:36:09 GMT" + }, + "legend" : { + "enabled" : 0 + }, + "drilldown" : { + "series" : [ + { + "data" : [ + [ + "Perl", + 1 + ], + [ + "Raku", + 2 + ], + [ + "Blog", + 1 + ] + ], + "id" : "Arne Sommer", + "name" : "Arne Sommer" + }, + { + "data" : [ + [ + "Perl", + 1 + ] + ], + "id" : "Cheok-Yin Fung", + "name" : "Cheok-Yin Fung" + }, + { + "data" : [ + [ + "Perl", + 2 + ], + [ + "Raku", + 2 + ] + ], + "name" : "Colin Crain", + "id" : "Colin Crain" + }, + { + "data" : [ + [ + "Perl", + 2 + ] + ], + "name" : "Duncan C. White", + "id" : "Duncan C. White" + }, + { + "data" : [ + [ + "Perl", + 2 + ], + [ + "Blog", + 1 + ] + ], + "id" : "E. Choroba", + "name" : "E. Choroba" + }, + { + "name" : "Jared Martin", + "id" : "Jared Martin", + "data" : [ + [ + "Perl", + 2 + ], + [ + "Blog", + 1 + ] + ] + }, + { + "data" : [ + [ + "Perl", + 2 + ], + [ + "Raku", + 2 + ], + [ + "Blog", + 1 + ] + ], + "name" : "Javier Luque", + "id" : "Javier Luque" + }, + { + "id" : "Jorg Sommrey", + "name" : "Jorg Sommrey", + "data" : [ + [ + "Perl", + 1 + ] + ] + }, + { + "data" : [ + [ + "Raku", + 1 + ] + ], + "id" : "Kevin Colyer", + "name" : "Kevin Colyer" + }, + { + "data" : [ + [ + "Perl", + 2 + ], + [ + "Raku", + 2 + ], + [ + "Blog", + 1 + ] + ], + "id" : "Laurent Rosenfeld", + "name" : "Laurent Rosenfeld" + }, + { + "id" : "Leo Manfredi", + "name" : "Leo Manfredi", + "data" : [ + [ + "Perl", + 1 + ] + ] + }, + { + "data" : [ + [ + "Perl", + 1 + ] + ], + "id" : "Lubos Kolouch", + "name" : "Lubos Kolouch" + }, + { + "data" : [ + [ + "Raku", + 2 + ], + [ + "Blog", + 2 + ] + ], + "id" : "Luca Ferrari", + "name" : "Luca Ferrari" + }, + { + "data" : [ + [ + "Perl", + 2 + ], + [ + "Raku", + 2 + ] + ], + "name" : "Mark Anderson", + "id" : "Mark Anderson" + }, + { + "data" : [ + [ + "Perl", + 2 + ], + [ + "Raku", + 2 + ], + [ + "Blog", + 1 + ] + ], + "id" : "Mohammad S Anwar", + "name" : "Mohammad S Anwar" + }, + { + "name" : "Roger Bell_West", + "id" : "Roger Bell_West", + "data" : [ + [ + "Perl", + 2 + ] + ] + }, + { + "id" : "Saif Ahmed", + "name" : "Saif Ahmed", + "data" : [ + [ + "Perl", + 2 + ] + ] + }, + { + "name" : "Shahed Nooshmand", + "id" : "Shahed Nooshmand", + "data" : [ + [ + "Raku", + 2 + ], + [ + "Blog", + 1 + ] + ] + }, + { + "data" : [ + [ + "Raku", + 2 + ] + ], + "id" : "Simon Proctor", + "name" : "Simon Proctor" + }, + { + "data" : [ + [ + "Perl", + 2 + ] + ], + "id" : "Ulrich Rieke", + "name" : "Ulrich Rieke" + }, + { + "data" : [ + [ + "Perl", + 2 + ] + ], + "name" : "Wanderdoc", + "id" : "Wanderdoc" + }, + { + "name" : "Yet Ebreo", + "id" : "Yet Ebreo", + "data" : [ + [ + "Perl", + 2 + ] + ] + } + ] + }, + "tooltip" : { + "pointFormat" : "{point.name}: {point.y:f}
", + "followPointer" : 1, + "headerFormat" : "{series.name}
" + }, + "yAxis" : { + "title" : { + "text" : "Total Solutions" + } + } +} diff --git a/stats/pwc-current.json b/stats/pwc-current.json index d273d7872e..f5e3ecc63e 100644 --- a/stats/pwc-current.json +++ b/stats/pwc-current.json @@ -1,267 +1,37 @@ { - "series" : [ - { - "data" : [ - { - "y" : 4, - "drilldown" : "Arne Sommer", - "name" : "Arne Sommer" - }, - { - "y" : 1, - "name" : "Cheok-Yin Fung", - "drilldown" : "Cheok-Yin Fung" - }, - { - "drilldown" : "Colin Crain", - "name" : "Colin Crain", - "y" : 4 - }, - { - "name" : "Duncan C. White", - "drilldown" : "Duncan C. White", - "y" : 2 - }, - { - "drilldown" : "E. Choroba", - "name" : "E. Choroba", - "y" : 3 - }, - { - "name" : "Jared Martin", - "drilldown" : "Jared Martin", - "y" : 3 - }, - { - "y" : 5, - "drilldown" : "Javier Luque", - "name" : "Javier Luque" - }, - { - "name" : "Jorg Sommrey", - "drilldown" : "Jorg Sommrey", - "y" : 1 - }, - { - "drilldown" : "Kevin Colyer", - "name" : "Kevin Colyer", - "y" : 1 - }, - { - "y" : 5, - "drilldown" : "Laurent Rosenfeld", - "name" : "Laurent Rosenfeld" - }, - { - "y" : 1, - "drilldown" : "Leo Manfredi", - "name" : "Leo Manfredi" - }, - { - "drilldown" : "Lubos Kolouch", - "name" : "Lubos Kolouch", - "y" : 1 - }, - { - "name" : "Luca Ferrari", - "drilldown" : "Luca Ferrari", - "y" : 4 - }, - { - "name" : "Mark Anderson", - "drilldown" : "Mark Anderson", - "y" : 4 - }, - { - "drilldown" : "Mohammad S Anwar", - "name" : "Mohammad S Anwar", - "y" : 5 - }, - { - "name" : "Roger Bell_West", - "drilldown" : "Roger Bell_West", - "y" : 2 - }, - { - "y" : 2, - "drilldown" : "Saif Ahmed", - "name" : "Saif Ahmed" - }, - { - "y" : 3, - "name" : "Shahed Nooshmand", - "drilldown" : "Shahed Nooshmand" - }, - { - "y" : 2, - "drilldown" : "Simon Proctor", - "name" : "Simon Proctor" - }, - { - "y" : 2, - "name" : "Ulrich Rieke", - "drilldown" : "Ulrich Rieke" - }, - { - "y" : 2, - "name" : "Wanderdoc", - "drilldown" : "Wanderdoc" - }, - { - "y" : 2, - "name" : "Yet Ebreo", - "drilldown" : "Yet Ebreo" - } - ], - "colorByPoint" : 1, - "name" : "Perl Weekly Challenge - 058" - } - ], - "title" : { - "text" : "Perl Weekly Challenge - 058" + "legend" : { + "enabled" : 0 + }, + "subtitle" : { + "text" : "[Champions: 1] Last updated at 2020-05-04 08:18:42 GMT" }, "chart" : { "type" : "column" }, - "xAxis" : { - "type" : "category" - }, "plotOptions" : { "series" : { - "borderWidth" : 0, "dataLabels" : { - "format" : "{point.y}", - "enabled" : 1 - } + "enabled" : 1, + "format" : "{point.y}" + }, + "borderWidth" : 0 } }, - "subtitle" : { - "text" : "[Champions: 22] Last updated at 2020-05-03 23:36:09 GMT" + "title" : { + "text" : "Perl Weekly Challenge - 059" }, - "legend" : { - "enabled" : 0 + "xAxis" : { + "type" : "category" + }, + "tooltip" : { + "headerFormat" : "{series.name}
", + "pointFormat" : "{point.name}: {point.y:f}
", + "followPointer" : 1 }, "drilldown" : { "series" : [ { - "data" : [ - [ - "Perl", - 1 - ], - [ - "Raku", - 2 - ], - [ - "Blog", - 1 - ] - ], - "id" : "Arne Sommer", - "name" : "Arne Sommer" - }, - { - "data" : [ - [ - "Perl", - 1 - ] - ], - "id" : "Cheok-Yin Fung", - "name" : "Cheok-Yin Fung" - }, - { - "data" : [ - [ - "Perl", - 2 - ], - [ - "Raku", - 2 - ] - ], - "name" : "Colin Crain", - "id" : "Colin Crain" - }, - { - "data" : [ - [ - "Perl", - 2 - ] - ], - "name" : "Duncan C. White", - "id" : "Duncan C. White" - }, - { - "data" : [ - [ - "Perl", - 2 - ], - [ - "Blog", - 1 - ] - ], - "id" : "E. Choroba", - "name" : "E. Choroba" - }, - { - "name" : "Jared Martin", - "id" : "Jared Martin", - "data" : [ - [ - "Perl", - 2 - ], - [ - "Blog", - 1 - ] - ] - }, - { - "data" : [ - [ - "Perl", - 2 - ], - [ - "Raku", - 2 - ], - [ - "Blog", - 1 - ] - ], "name" : "Javier Luque", - "id" : "Javier Luque" - }, - { - "id" : "Jorg Sommrey", - "name" : "Jorg Sommrey", - "data" : [ - [ - "Perl", - 1 - ] - ] - }, - { - "data" : [ - [ - "Raku", - 1 - ] - ], - "id" : "Kevin Colyer", - "name" : "Kevin Colyer" - }, - { "data" : [ [ "Perl", @@ -276,156 +46,23 @@ 1 ] ], - "id" : "Laurent Rosenfeld", - "name" : "Laurent Rosenfeld" - }, - { - "id" : "Leo Manfredi", - "name" : "Leo Manfredi", - "data" : [ - [ - "Perl", - 1 - ] - ] - }, - { - "data" : [ - [ - "Perl", - 1 - ] - ], - "id" : "Lubos Kolouch", - "name" : "Lubos Kolouch" - }, - { - "data" : [ - [ - "Raku", - 2 - ], - [ - "Blog", - 2 - ] - ], - "id" : "Luca Ferrari", - "name" : "Luca Ferrari" - }, - { - "data" : [ - [ - "Perl", - 2 - ], - [ - "Raku", - 2 - ] - ], - "name" : "Mark Anderson", - "id" : "Mark Anderson" - }, - { - "data" : [ - [ - "Perl", - 2 - ], - [ - "Raku", - 2 - ], - [ - "Blog", - 1 - ] - ], - "id" : "Mohammad S Anwar", - "name" : "Mohammad S Anwar" - }, - { - "name" : "Roger Bell_West", - "id" : "Roger Bell_West", - "data" : [ - [ - "Perl", - 2 - ] - ] - }, - { - "id" : "Saif Ahmed", - "name" : "Saif Ahmed", - "data" : [ - [ - "Perl", - 2 - ] - ] - }, - { - "name" : "Shahed Nooshmand", - "id" : "Shahed Nooshmand", - "data" : [ - [ - "Raku", - 2 - ], - [ - "Blog", - 1 - ] - ] - }, - { - "data" : [ - [ - "Raku", - 2 - ] - ], - "id" : "Simon Proctor", - "name" : "Simon Proctor" - }, - { - "data" : [ - [ - "Perl", - 2 - ] - ], - "id" : "Ulrich Rieke", - "name" : "Ulrich Rieke" - }, - { - "data" : [ - [ - "Perl", - 2 - ] - ], - "name" : "Wanderdoc", - "id" : "Wanderdoc" - }, - { - "name" : "Yet Ebreo", - "id" : "Yet Ebreo", - "data" : [ - [ - "Perl", - 2 - ] - ] + "id" : "Javier Luque" } ] }, - "tooltip" : { - "pointFormat" : "{point.name}: {point.y:f}
", - "followPointer" : 1, - "headerFormat" : "{series.name}
" - }, + "series" : [ + { + "data" : [ + { + "drilldown" : "Javier Luque", + "name" : "Javier Luque", + "y" : 5 + } + ], + "name" : "Perl Weekly Challenge - 059", + "colorByPoint" : 1 + } + ], "yAxis" : { "title" : { "text" : "Total Solutions" diff --git a/stats/pwc-language-breakdown-summary.json b/stats/pwc-language-breakdown-summary.json index 6cc34f3337..7bc77f6e2b 100644 --- a/stats/pwc-language-breakdown-summary.json +++ b/stats/pwc-language-breakdown-summary.json @@ -1,63 +1,63 @@ { + "yAxis" : { + "min" : 0, + "title" : { + "text" : null + } + }, "series" : [ { + "dataLabels" : { + "color" : "#FFFFFF", + "align" : "right", + "y" : 10, + "format" : "{point.y:.0f}", + "rotation" : -90, + "enabled" : "true", + "style" : { + "fontFamily" : "Verdana, sans-serif", + "fontSize" : "13px" + } + }, "name" : "Contributions", "data" : [ [ "Blog", - 652 + 653 ], [ "Perl", - 2458 + 2460 ], [ "Raku", - 1540 + 1542 ] - ], - "dataLabels" : { - "align" : "right", - "rotation" : -90, - "format" : "{point.y:.0f}", - "y" : 10, - "enabled" : "true", - "style" : { - "fontFamily" : "Verdana, sans-serif", - "fontSize" : "13px" - }, - "color" : "#FFFFFF" - } + ] } ], + "tooltip" : { + "pointFormat" : "{point.y:.0f}" + }, "title" : { "text" : "Perl Weekly Challenge Contributions [2019 - 2020]" }, - "chart" : { - "type" : "column" - }, "xAxis" : { + "type" : "category", "labels" : { "style" : { - "fontSize" : "13px", - "fontFamily" : "Verdana, sans-serif" + "fontFamily" : "Verdana, sans-serif", + "fontSize" : "13px" } - }, - "type" : "category" - }, - "subtitle" : { - "text" : "Last updated at 2020-05-03 23:36:09 GMT" + } }, "legend" : { "enabled" : "false" }, - "tooltip" : { - "pointFormat" : "{point.y:.0f}" + "chart" : { + "type" : "column" }, - "yAxis" : { - "min" : 0, - "title" : { - "text" : null - } + "subtitle" : { + "text" : "Last updated at 2020-05-04 08:18:42 GMT" } } diff --git a/stats/pwc-language-breakdown.json b/stats/pwc-language-breakdown.json index ece299f2fc..5905d824fa 100644 --- a/stats/pwc-language-breakdown.json +++ b/stats/pwc-language-breakdown.json @@ -1,52 +1,81 @@ { + "title" : { + "text" : "Perl Weekly Challenge Language" + }, + "xAxis" : { + "type" : "category" + }, + "tooltip" : { + "headerFormat" : "", + "pointFormat" : "Challenge {point.name}: {point.y:f}
", + "followPointer" : "true" + }, + "chart" : { + "type" : "column" + }, + "subtitle" : { + "text" : "Click the columns to drilldown the language breakdown. Last updated at 2020-05-04 08:18:42 GMT" + }, + "legend" : { + "enabled" : "false" + }, + "plotOptions" : { + "series" : { + "dataLabels" : { + "enabled" : 1, + "format" : "{point.y}" + }, + "borderWidth" : 0 + } + }, "series" : [ { - "colorByPoint" : "true", + "name" : "Perl Weekly Challenge Languages", "data" : [ { - "drilldown" : "001", + "y" : 140, "name" : "#001", - "y" : 140 + "drilldown" : "001" }, { - "y" : 109, "drilldown" : "002", + "y" : 109, "name" : "#002" }, { + "name" : "#003", "y" : 71, - "drilldown" : "003", - "name" : "#003" + "drilldown" : "003" }, { - "y" : 91, "name" : "#004", + "y" : 91, "drilldown" : "004" }, { "name" : "#005", - "drilldown" : "005", - "y" : 71 + "y" : 71, + "drilldown" : "005" }, { "y" : 52, - "drilldown" : "006", - "name" : "#006" + "name" : "#006", + "drilldown" : "006" }, { + "y" : 58, "name" : "#007", - "drilldown" : "007", - "y" : 58 + "drilldown" : "007" }, { + "name" : "#008", "y" : 70, - "drilldown" : "008", - "name" : "#008" + "drilldown" : "008" }, { "name" : "#009", - "drilldown" : "009", - "y" : 68 + "y" : 68, + "drilldown" : "009" }, { "drilldown" : "010", @@ -55,68 +84,68 @@ }, { "y" : 79, - "drilldown" : "011", - "name" : "#011" + "name" : "#011", + "drilldown" : "011" }, { - "y" : 83, "drilldown" : "012", - "name" : "#012" + "name" : "#012", + "y" : 83 }, { "drilldown" : "013", - "name" : "#013", - "y" : 76 + "y" : 76, + "name" : "#013" }, { - "name" : "#014", "drilldown" : "014", + "name" : "#014", "y" : 96 }, { - "drilldown" : "015", "name" : "#015", - "y" : 93 + "y" : 93, + "drilldown" : "015" }, { "y" : 66, - "drilldown" : "016", - "name" : "#016" + "name" : "#016", + "drilldown" : "016" }, { "y" : 79, - "drilldown" : "017", - "name" : "#017" + "name" : "#017", + "drilldown" : "017" }, { - "drilldown" : "018", + "y" : 76, "name" : "#018", - "y" : 76 + "drilldown" : "018" }, { - "name" : "#019", "drilldown" : "019", + "name" : "#019", "y" : 97 }, { "y" : 95, - "drilldown" : "020", - "name" : "#020" + "name" : "#020", + "drilldown" : "020" }, { - "y" : 67, "drilldown" : "021", + "y" : 67, "name" : "#021" }, { - "drilldown" : "022", "name" : "#022", - "y" : 63 + "y" : 63, + "drilldown" : "022" }, { + "drilldown" : "023", "y" : 91, - "name" : "#023", - "drilldown" : "023" + "name" : "#023" }, { "drilldown" : "024", @@ -129,14 +158,14 @@ "drilldown" : "025" }, { + "drilldown" : "026", "y" : 70, - "name" : "#026", - "drilldown" : "026" + "name" : "#026" }, { - "y" : 58, "drilldown" : "027", - "name" : "#027" + "name" : "#027", + "y" : 58 }, { "y" : 78, @@ -144,93 +173,93 @@ "drilldown" : "028" }, { - "drilldown" : "029", "name" : "#029", - "y" : 77 + "y" : 77, + "drilldown" : "029" }, { "y" : 115, - "drilldown" : "030", - "name" : "#030" + "name" : "#030", + "drilldown" : "030" }, { - "y" : 87, "name" : "#031", + "y" : 87, "drilldown" : "031" }, { - "y" : 92, "drilldown" : "032", + "y" : 92, "name" : "#032" }, { - "y" : 108, "name" : "#033", + "y" : 108, "drilldown" : "033" }, { + "name" : "#034", "y" : 62, - "drilldown" : "034", - "name" : "#034" + "drilldown" : "034" }, { "name" : "#035", - "drilldown" : "035", - "y" : 62 + "y" : 62, + "drilldown" : "035" }, { - "y" : 66, "drilldown" : "036", - "name" : "#036" + "name" : "#036", + "y" : 66 }, { + "drilldown" : "037", "y" : 63, - "name" : "#037", - "drilldown" : "037" + "name" : "#037" }, { - "drilldown" : "038", + "y" : 65, "name" : "#038", - "y" : 65 + "drilldown" : "038" }, { + "drilldown" : "039", "y" : 60, - "name" : "#039", - "drilldown" : "039" + "name" : "#039" }, { - "name" : "#040", "drilldown" : "040", - "y" : 71 + "y" : 71, + "name" : "#040" }, { - "y" : 74, "drilldown" : "041", - "name" : "#041" + "name" : "#041", + "y" : 74 }, { - "y" : 88, + "drilldown" : "042", "name" : "#042", - "drilldown" : "042" + "y" : 88 }, { + "name" : "#043", "y" : 65, - "drilldown" : "043", - "name" : "#043" + "drilldown" : "043" }, { + "name" : "#044", "y" : 81, - "drilldown" : "044", - "name" : "#044" + "drilldown" : "044" }, { "name" : "#045", - "drilldown" : "045", - "y" : 94 + "y" : 94, + "drilldown" : "045" }, { - "name" : "#046", "drilldown" : "046", + "name" : "#046", "y" : 85 }, { @@ -244,93 +273,73 @@ "drilldown" : "048" }, { + "drilldown" : "049", "y" : 85, - "name" : "#049", - "drilldown" : "049" + "name" : "#049" }, { - "y" : 96, "drilldown" : "050", - "name" : "#050" + "name" : "#050", + "y" : 96 }, { - "y" : 87, "drilldown" : "051", - "name" : "#051" + "name" : "#051", + "y" : 87 }, { - "y" : 89, "drilldown" : "052", + "y" : 89, "name" : "#052" }, { + "name" : "#053", "y" : 99, - "drilldown" : "053", - "name" : "#053" + "drilldown" : "053" }, { - "y" : 97, + "drilldown" : "054", "name" : "#054", - "drilldown" : "054" + "y" : 97 }, { + "drilldown" : "055", "y" : 86, - "name" : "#055", - "drilldown" : "055" + "name" : "#055" }, { + "y" : 92, "name" : "#056", - "drilldown" : "056", - "y" : 92 + "drilldown" : "056" }, { - "name" : "#057", "drilldown" : "057", - "y" : 75 + "y" : 75, + "name" : "#057" }, { + "y" : 59, "name" : "#058", - "drilldown" : "058", - "y" : 59 + "drilldown" : "058" + }, + { + "name" : "#059", + "y" : 5, + "drilldown" : "059" } ], - "name" : "Perl Weekly Challenge Languages" + "colorByPoint" : "true" } ], - "title" : { - "text" : "Perl Weekly Challenge Language" - }, - "chart" : { - "type" : "column" - }, - "xAxis" : { - "type" : "category" - }, - "plotOptions" : { - "series" : { - "borderWidth" : 0, - "dataLabels" : { - "enabled" : 1, - "format" : "{point.y}" - } + "yAxis" : { + "title" : { + "text" : "Total Solutions" } }, - "subtitle" : { - "text" : "Click the columns to drilldown the language breakdown. Last updated at 2020-05-03 23:36:09 GMT" - }, - "legend" : { - "enabled" : "false" - }, - "tooltip" : { - "headerFormat" : "", - "followPointer" : "true", - "pointFormat" : "Challenge {point.name}: {point.y:f}
" - }, "drilldown" : { "series" : [ { "id" : "001", - "name" : "001", "data" : [ [ "Perl", @@ -344,9 +353,12 @@ "Blog", 11 ] - ] + ], + "name" : "001" }, { + "name" : "002", + "id" : "002", "data" : [ [ "Perl", @@ -360,9 +372,7 @@ "Blog", 10 ] - ], - "id" : "002", - "name" : "002" + ] }, { "name" : "003", @@ -384,7 +394,6 @@ }, { "name" : "004", - "id" : "004", "data" : [ [ "Perl", @@ -398,11 +407,10 @@ "Blog", 10 ] - ] + ], + "id" : "004" }, { - "name" : "005", - "id" : "005", "data" : [ [ "Perl", @@ -416,11 +424,11 @@ "Blog", 12 ] - ] + ], + "id" : "005", + "name" : "005" }, { - "id" : "006", - "name" : "006", "data" : [ [ "Perl", @@ -434,7 +442,9 @@ "Blog", 7 ] - ] + ], + "id" : "006", + "name" : "006" }, { "data" : [ @@ -451,10 +461,12 @@ 10 ] ], - "name" : "007", - "id" : "007" + "id" : "007", + "name" : "007" }, { + "name" : "008", + "id" : "008", "data" : [ [ "Perl", @@ -468,11 +480,10 @@ "Blog", 12 ] - ], - "name" : "008", - "id" : "008" + ] }, { + "id" : "009", "data" : [ [ "Perl", @@ -487,10 +498,11 @@ 13 ] ], - "name" : "009", - "id" : "009" + "name" : "009" }, { + "name" : "010", + "id" : "010", "data" : [ [ "Perl", @@ -504,13 +516,11 @@ "Blog", 11 ] - ], - "name" : "010", - "id" : "010" + ] }, { - "id" : "011", "name" : "011", + "id" : "011", "data" : [ [ "Perl", @@ -527,6 +537,7 @@ ] }, { + "name" : "012", "data" : [ [ "Perl", @@ -541,10 +552,10 @@ 11 ] ], - "id" : "012", - "name" : "012" + "id" : "012" }, { + "id" : "013", "data" : [ [ "Perl", @@ -559,10 +570,11 @@ 13 ] ], - "id" : "013", "name" : "013" }, { + "name" : "014", + "id" : "014", "data" : [ [ "Perl", @@ -576,11 +588,10 @@ "Blog", 15 ] - ], - "name" : "014", - "id" : "014" + ] }, { + "name" : "015", "data" : [ [ "Perl", @@ -595,10 +606,11 @@ 15 ] ], - "name" : "015", "id" : "015" }, { + "name" : "016", + "id" : "016", "data" : [ [ "Perl", @@ -612,9 +624,7 @@ "Blog", 12 ] - ], - "id" : "016", - "name" : "016" + ] }, { "name" : "017", @@ -635,6 +645,7 @@ ] }, { + "id" : "018", "data" : [ [ "Perl", @@ -649,10 +660,10 @@ 14 ] ], - "name" : "018", - "id" : "018" + "name" : "018" }, { + "id" : "019", "data" : [ [ "Perl", @@ -667,7 +678,6 @@ 13 ] ], - "id" : "019", "name" : "019" }, { @@ -707,6 +717,7 @@ ] }, { + "id" : "022", "data" : [ [ "Perl", @@ -721,10 +732,10 @@ 10 ] ], - "name" : "022", - "id" : "022" + "name" : "022" }, { + "id" : "023", "data" : [ [ "Perl", @@ -739,12 +750,11 @@ 12 ] ], - "id" : "023", "name" : "023" }, { - "id" : "024", "name" : "024", + "id" : "024", "data" : [ [ "Perl", @@ -761,6 +771,8 @@ ] }, { + "name" : "025", + "id" : "025", "data" : [ [ "Perl", @@ -774,13 +786,9 @@ "Blog", 12 ] - ], - "id" : "025", - "name" : "025" + ] }, { - "name" : "026", - "id" : "026", "data" : [ [ "Perl", @@ -794,11 +802,11 @@ "Blog", 10 ] - ] + ], + "id" : "026", + "name" : "026" }, { - "name" : "027", - "id" : "027", "data" : [ [ "Perl", @@ -812,9 +820,12 @@ "Blog", 9 ] - ] + ], + "id" : "027", + "name" : "027" }, { + "id" : "028", "data" : [ [ "Perl", @@ -829,8 +840,7 @@ 9 ] ], - "name" : "028", - "id" : "028" + "name" : "028" }, { "data" : [ @@ -847,12 +857,12 @@ 12 ] ], - "name" : "029", - "id" : "029" + "id" : "029", + "name" : "029" }, { - "id" : "030", "name" : "030", + "id" : "030", "data" : [ [ "Perl", @@ -870,7 +880,6 @@ }, { "id" : "031", - "name" : "031", "data" : [ [ "Perl", @@ -884,11 +893,10 @@ "Blog", 9 ] - ] + ], + "name" : "031" }, { - "name" : "032", - "id" : "032", "data" : [ [ "Perl", @@ -902,9 +910,12 @@ "Blog", 10 ] - ] + ], + "id" : "032", + "name" : "032" }, { + "name" : "033", "data" : [ [ "Perl", @@ -919,8 +930,7 @@ 10 ] ], - "id" : "033", - "name" : "033" + "id" : "033" }, { "name" : "034", @@ -941,6 +951,7 @@ ] }, { + "id" : "035", "data" : [ [ "Perl", @@ -955,7 +966,6 @@ 9 ] ], - "id" : "035", "name" : "035" }, { @@ -978,7 +988,6 @@ }, { "name" : "037", - "id" : "037", "data" : [ [ "Perl", @@ -992,7 +1001,8 @@ "Blog", 9 ] - ] + ], + "id" : "037" }, { "data" : [ @@ -1009,10 +1019,11 @@ 12 ] ], - "name" : "038", - "id" : "038" + "id" : "038", + "name" : "038" }, { + "id" : "039", "data" : [ [ "Perl", @@ -1027,10 +1038,11 @@ 12 ] ], - "name" : "039", - "id" : "039" + "name" : "039" }, { + "name" : "040", + "id" : "040", "data" : [ [ "Perl", @@ -1044,9 +1056,7 @@ "Blog", 10 ] - ], - "name" : "040", - "id" : "040" + ] }, { "data" : [ @@ -1067,8 +1077,6 @@ "name" : "041" }, { - "name" : "042", - "id" : "042", "data" : [ [ "Perl", @@ -1082,11 +1090,11 @@ "Blog", 11 ] - ] + ], + "id" : "042", + "name" : "042" }, { - "id" : "043", - "name" : "043", "data" : [ [ "Perl", @@ -1100,11 +1108,11 @@ "Blog", 10 ] - ] + ], + "id" : "043", + "name" : "043" }, { - "id" : "044", - "name" : "044", "data" : [ [ "Perl", @@ -1118,7 +1126,9 @@ "Blog", 10 ] - ] + ], + "id" : "044", + "name" : "044" }, { "data" : [ @@ -1139,6 +1149,7 @@ "name" : "045" }, { + "name" : "046", "data" : [ [ "Perl", @@ -1153,8 +1164,7 @@ 10 ] ], - "id" : "046", - "name" : "046" + "id" : "046" }, { "data" : [ @@ -1175,6 +1185,8 @@ "name" : "047" }, { + "name" : "048", + "id" : "048", "data" : [ [ "Perl", @@ -1188,13 +1200,10 @@ "Blog", 12 ] - ], - "id" : "048", - "name" : "048" + ] }, { "name" : "049", - "id" : "049", "data" : [ [ "Perl", @@ -1208,11 +1217,12 @@ "Blog", 12 ] - ] + ], + "id" : "049" }, { - "id" : "050", "name" : "050", + "id" : "050", "data" : [ [ "Perl", @@ -1229,6 +1239,7 @@ ] }, { + "id" : "051", "data" : [ [ "Perl", @@ -1243,8 +1254,7 @@ 11 ] ], - "name" : "051", - "id" : "051" + "name" : "051" }, { "data" : [ @@ -1261,10 +1271,12 @@ 14 ] ], - "name" : "052", - "id" : "052" + "id" : "052", + "name" : "052" }, { + "name" : "053", + "id" : "053", "data" : [ [ "Perl", @@ -1278,13 +1290,10 @@ "Blog", 15 ] - ], - "name" : "053", - "id" : "053" + ] }, { "id" : "054", - "name" : "054", "data" : [ [ "Perl", @@ -1298,7 +1307,8 @@ "Blog", 14 ] - ] + ], + "name" : "054" }, { "data" : [ @@ -1333,10 +1343,12 @@ 15 ] ], - "name" : "056", - "id" : "056" + "id" : "056", + "name" : "056" }, { + "name" : "057", + "id" : "057", "data" : [ [ "Perl", @@ -1350,13 +1362,11 @@ "Blog", 12 ] - ], - "id" : "057", - "name" : "057" + ] }, { - "id" : "058", "name" : "058", + "id" : "058", "data" : [ [ "Perl", @@ -1371,12 +1381,25 @@ 9 ] ] + }, + { + "id" : "059", + "data" : [ + [ + "Perl", + 2 + ], + [ + "Raku", + 2 + ], + [ + "Blog", + 1 + ] + ], + "name" : "059" } ] - }, - "yAxis" : { - "title" : { - "text" : "Total Solutions" - } } } diff --git a/stats/pwc-leaders.json b/stats/pwc-leaders.json index 0a5b5570cd..15ded69ad5 100644 --- a/stats/pwc-leaders.json +++ b/stats/pwc-leaders.json @@ -1,289 +1,7 @@ { - "yAxis" : { - "title" : { - "text" : "Total Score" - } - }, - "xAxis" : { - "type" : "category" - }, - "title" : { - "text" : "Perl Weekly Challenge Leaders (TOP 50)" - }, - "plotOptions" : { - "series" : { - "dataLabels" : { - "format" : "{point.y}", - "enabled" : 1 - }, - "borderWidth" : 0 - } - }, - "chart" : { - "type" : "column" - }, - "series" : [ - { - "data" : [ - { - "drilldown" : "Laurent Rosenfeld", - "name" : "#1: Laurent Rosenfeld", - "y" : 686 - }, - { - "drilldown" : "Jaldhar H. Vyas", - "name" : "#2: Jaldhar H. Vyas", - "y" : 502 - }, - { - "drilldown" : "Ruben Westerberg", - "name" : "#3: Ruben Westerberg", - "y" : 452 - }, - { - "y" : 366, - "drilldown" : "Roger Bell_West", - "name" : "#4: Roger Bell_West" - }, - { - "drilldown" : "Arne Sommer", - "name" : "#5: Arne Sommer", - "y" : 362 - }, - { - "y" : 334, - "name" : "#6: Joelle Maslak", - "drilldown" : "Joelle Maslak" - }, - { - "drilldown" : "Adam Russell", - "name" : "#7: Adam Russell", - "y" : 316 - }, - { - "y" : 316, - "name" : "#8: E. Choroba", - "drilldown" : "E. Choroba" - }, - { - "y" : 280, - "name" : "#9: Javier Luque", - "drilldown" : "Javier Luque" - }, - { - "name" : "#10: Ryan Thompson", - "drilldown" : "Ryan Thompson", - "y" : 278 - }, - { - "drilldown" : "Athanasius", - "name" : "#11: Athanasius", - "y" : 252 - }, - { - "y" : 230, - "name" : "#12: Andrezgz", - "drilldown" : "Andrezgz" - }, - { - "y" : 230, - "name" : "#13: Simon Proctor", - "drilldown" : "Simon Proctor" - }, - { - "y" : 216, - "name" : "#14: Dave Jacoby", - "drilldown" : "Dave Jacoby" - }, - { - "y" : 208, - "drilldown" : "Duncan C. White", - "name" : "#15: Duncan C. White" - }, - { - "y" : 206, - "name" : "#16: Colin Crain", - "drilldown" : "Colin Crain" - }, - { - "y" : 172, - "name" : "#17: Kevin Colyer", - "drilldown" : "Kevin Colyer" - }, - { - "y" : 166, - "name" : "#18: Yet Ebreo", - "drilldown" : "Yet Ebreo" - }, - { - "name" : "#19: Kian-Meng Ang", - "drilldown" : "Kian-Meng Ang", - "y" : 162 - }, - { - "name" : "#20: Noud Aldenhoven", - "drilldown" : "Noud Aldenhoven", - "y" : 140 - }, - { - "drilldown" : "Duane Powell", - "name" : "#21: Duane Powell", - "y" : 136 - }, - { - "y" : 136, - "drilldown" : "Steven Wilson", - "name" : "#22: Steven Wilson" - }, - { - "name" : "#23: Ulrich Rieke", - "drilldown" : "Ulrich Rieke", - "y" : 132 - }, - { - "y" : 118, - "drilldown" : "Lubos Kolouch", - "name" : "#24: Lubos Kolouch" - }, - { - "y" : 118, - "name" : "#25: Mohammad S Anwar", - "drilldown" : "Mohammad S Anwar" - }, - { - "y" : 112, - "drilldown" : "Luca Ferrari", - "name" : "#26: Luca Ferrari" - }, - { - "y" : 112, - "name" : "#27: Markus Holzer", - "drilldown" : "Markus Holzer" - }, - { - "drilldown" : "Burkhard Nickels", - "name" : "#28: Burkhard Nickels", -