From b794f36b29be553e1b6dc1e790c5d0bf331a9bc3 Mon Sep 17 00:00:00 2001 From: Mohammad S Anwar Date: Mon, 24 Feb 2020 13:16:54 +0000 Subject: - Added solutions by Wanderdoc. --- challenge-049/wanderdoc/perl/ch-1.pl | 59 +++ challenge-049/wanderdoc/perl/ch-2.pl | 164 +++++++ stats/pwc-current.json | 89 ++-- stats/pwc-language-breakdown-summary.json | 50 +- stats/pwc-language-breakdown.json | 372 +++++++------- stats/pwc-leaders.json | 778 +++++++++++++++--------------- stats/pwc-summary-1-30.json | 100 ++-- stats/pwc-summary-121-150.json | 42 +- stats/pwc-summary-31-60.json | 38 +- stats/pwc-summary-61-90.json | 120 ++--- stats/pwc-summary-91-120.json | 102 ++-- stats/pwc-summary.json | 346 ++++++------- 12 files changed, 1249 insertions(+), 1011 deletions(-) create mode 100644 challenge-049/wanderdoc/perl/ch-1.pl create mode 100644 challenge-049/wanderdoc/perl/ch-2.pl diff --git a/challenge-049/wanderdoc/perl/ch-1.pl b/challenge-049/wanderdoc/perl/ch-1.pl new file mode 100644 index 0000000000..c80a6ee6ae --- /dev/null +++ b/challenge-049/wanderdoc/perl/ch-1.pl @@ -0,0 +1,59 @@ +#!perl +use strict; +use warnings FATAL => qw(all); + +=prompt +Write a script to accept a positive number as command line argument and print the smallest multiple of the given number consists of digits 0 and 1. +For example: For given number 55, the smallest multiple is 110 consisting of digits 0 and 1. +=cut + + + + + + +=notes +For now: Solution with brute force. Works, however there are several cases where it takes too long. +I will try to implement the pidgeonhole algorithmus seen here: https://math.stackexchange.com/questions/83932 . +=cut + + +use Math::BigInt; +Math::BigInt->accuracy(30); +use Time::HiRes qw[ time ]; + + + +my $NUM = shift or die "Which number?\n"; +my $start = time; + +my $FLAG_2_5 = ($NUM % 2 == 0 or $NUM % 5 == 0) ? 1 : 0; + +for my $i (1 .. 1_000_000_000) +{ + my $multiple = sprintf("%b", $i); + if ( $FLAG_2_5 == 1 and substr($multiple, -1, 1) eq '1' ) {next; } + + if ( length($multiple) > 17 ) + { + + + my $x = Math::BigInt->new($multiple); + my $modulo = $x->bmod($NUM); + if (0 == $modulo) + { + print $multiple, $/; last; + } + } + + + else + { + if ( 0 == $multiple % $NUM ) + { + print $multiple, $/; last; + } + } +} + +print "Used time: ", time() - $start, $/; \ No newline at end of file diff --git a/challenge-049/wanderdoc/perl/ch-2.pl b/challenge-049/wanderdoc/perl/ch-2.pl new file mode 100644 index 0000000000..5f9c978117 --- /dev/null +++ b/challenge-049/wanderdoc/perl/ch-2.pl @@ -0,0 +1,164 @@ +#!perl +use strict; +use warnings FATAL => qw(all); + +=prompt +Write a script to demonstrate LRU Cache feature. It should support operations get and set. Accept the capacity of the LRU Cache as command line argument. + Definition of LRU: An access to an item is defined as a get or a set operation of the item. “Least recently used” item is the one with the oldest access time. +=cut + + + + + + + + +package LRU +{ + use Scalar::Util qw(refaddr looks_like_number); + use Carp; + my (%DATA, %MAP, %CAPACITY); + + sub new + { + my ($class, $capacity) = @_; + + confess "Capacity must be a positive integer!$/" + unless ( looks_like_number($capacity) + and $capacity > 0 + and int($capacity) == $capacity); + + my $ref = bless \do{my $dummy}, $class; + $CAPACITY{refaddr $ref} = $capacity; + + return $ref; + } + + + + + sub get_capacity + { + my $self = shift; + + return $CAPACITY{refaddr $self}; + } + + + + sub set + { + my ($self, $key, $value) = @_; + push @{ $DATA{refaddr $self} }, {$key => $value}; + while ( scalar @{ $DATA{refaddr $self} } > $CAPACITY{refaddr $self} ) + { + shift @{ $DATA{refaddr $self} }; + } + + $self->_update_map; + } + + + sub get + { + my ($self, $key) = @_; + $self->_update_map; + + return -1 if not exists $MAP{refaddr $self}{$key}; + + my $idx = $MAP{refaddr $self}{$key}; + my $value = $DATA{refaddr $self}[$idx]->{$key}; + my $last = splice( @{$DATA{refaddr $self}}, $idx, 1); + push @{$DATA{refaddr $self}}, $last; + $self->_update_map; + return $value; + } + + sub _update_map + { + my $self = shift; + %{$MAP{refaddr $self}} = + map { my ($k) = keys %{$DATA{refaddr $self}[$_]}; $k => $_;} + 0 .. $#{ $DATA{refaddr $self} }; + } + + sub print_cache + { + my $self = shift; + + my @cache_stringified = + map { my ($k, $v) = each %{$DATA{refaddr $self}[$_]}; + qq["<${k}"=>${v}>]; } + 0 .. $#{ $DATA{refaddr $self} }; + + print "least recently used ", + join(" ", @cache_stringified), " most recently used", $/; + + } + + sub DESTROY + { + my $self = shift; + delete $DATA{refaddr $self}; + + delete $CAPACITY{refaddr $self}; + delete $MAP{refaddr $self}; + } +1; +} + + + + + +package main +{ + use Getopt::Std; + + my %options=(); + getopts("c:", \%options); + die "-c \n" unless defined $options{c}; + + my $cache = LRU->new($options{c}); + + print "DEBUG: Cache capacity: ", $cache->get_capacity, $/; + + $cache->set(1, 3); + $cache->set(2, 5); + $cache->set(3, 7); + + + print qq[$/After first filling ... $/]; + $cache->print_cache(); + + print qq[$/Getting "2" ... ]; + print $cache->get(2), $/; + + + print qq[$/After getting "2" ... $/]; + $cache->print_cache(); + + print qq[$/Getting "1" ... ]; + print $cache->get(1), $/; + + print qq[$/After getting "1" ... $/]; + $cache->print_cache(); + + print qq[$/Getting "4" ... ]; + print $cache->get(4), $/; + + print qq[$/After getting "4" ... $/]; + $cache->print_cache(); + + $cache->set(4, 9); + + print qq[$/After setting "4" ... $/]; + $cache->print_cache(); + + print qq[$/Getting "3" ... ]; + print $cache->get(3), $/; + + print qq[$/After getting "3" ... $/]; + $cache->print_cache(); +} diff --git a/stats/pwc-current.json b/stats/pwc-current.json index 22b7858fbd..6f8058909f 100644 --- a/stats/pwc-current.json +++ b/stats/pwc-current.json @@ -1,32 +1,10 @@ { - "title" : { - "text" : "Perl Weekly Challenge - 049" - }, - "tooltip" : { - "headerFormat" : "{series.name}
", - "pointFormat" : "{point.name}: {point.y:f}
", - "followPointer" : 1 - }, - "legend" : { - "enabled" : 0 - }, - "plotOptions" : { - "series" : { - "dataLabels" : { - "format" : "{point.y}", - "enabled" : 1 - }, - "borderWidth" : 0 - } - }, "series" : [ { - "name" : "Perl Weekly Challenge - 049", - "colorByPoint" : 1, "data" : [ { - "drilldown" : "Luca Ferrari", "y" : 4, + "drilldown" : "Luca Ferrari", "name" : "Luca Ferrari" }, { @@ -35,23 +13,29 @@ "name" : "Peter Scott" }, { - "name" : "Roger Bell West", "drilldown" : "Roger Bell West", + "name" : "Roger Bell West", "y" : 4 }, { - "name" : "Simon Proctor", "drilldown" : "Simon Proctor", + "name" : "Simon Proctor", "y" : 2 + }, + { + "y" : 2, + "drilldown" : "Wanderdoc", + "name" : "Wanderdoc" } - ] + ], + "name" : "Perl Weekly Challenge - 049", + "colorByPoint" : 1 } ], "drilldown" : { "series" : [ { "name" : "Luca Ferrari", - "id" : "Luca Ferrari", "data" : [ [ "Raku", @@ -61,20 +45,20 @@ "Blog", 2 ] - ] + ], + "id" : "Luca Ferrari" }, { - "name" : "Peter Scott", "id" : "Peter Scott", "data" : [ [ "Perl", 1 ] - ] + ], + "name" : "Peter Scott" }, { - "name" : "Roger Bell West", "id" : "Roger Bell West", "data" : [ [ @@ -85,23 +69,31 @@ "Raku", 2 ] - ] + ], + "name" : "Roger Bell West" }, { - "id" : "Simon Proctor", "name" : "Simon Proctor", + "id" : "Simon Proctor", "data" : [ [ "Raku", 2 ] ] + }, + { + "data" : [ + [ + "Perl", + 2 + ] + ], + "id" : "Wanderdoc", + "name" : "Wanderdoc" } ] }, - "xAxis" : { - "type" : "category" - }, "chart" : { "type" : "column" }, @@ -110,7 +102,30 @@ "text" : "Total Solutions" } }, + "title" : { + "text" : "Perl Weekly Challenge - 049" + }, + "plotOptions" : { + "series" : { + "dataLabels" : { + "format" : "{point.y}", + "enabled" : 1 + }, + "borderWidth" : 0 + } + }, + "tooltip" : { + "pointFormat" : "{point.name}: {point.y:f}
", + "followPointer" : 1, + "headerFormat" : "{series.name}
" + }, + "xAxis" : { + "type" : "category" + }, "subtitle" : { - "text" : "[Champions: 4] Last updated at 2020-02-24 12:57:12 GMT" + "text" : "[Champions: 5] Last updated at 2020-02-24 13:16:34 GMT" + }, + "legend" : { + "enabled" : 0 } } diff --git a/stats/pwc-language-breakdown-summary.json b/stats/pwc-language-breakdown-summary.json index dbd5ee1ea9..c7f8dbd748 100644 --- a/stats/pwc-language-breakdown-summary.json +++ b/stats/pwc-language-breakdown-summary.json @@ -1,12 +1,18 @@ { + "tooltip" : { + "pointFormat" : "{point.y:.0f}" + }, "title" : { "text" : "Perl Weekly Challenge Contributions [2019 - 2020]" }, - "tooltip" : { - "pointFormat" : "{point.y:.0f}" + "yAxis" : { + "min" : 0, + "title" : { + "text" : null + } }, - "legend" : { - "enabled" : "false" + "chart" : { + "type" : "column" }, "series" : [ { @@ -17,7 +23,7 @@ ], [ "Perl", - 2004 + 2006 ], [ "Raku", @@ -25,39 +31,33 @@ ] ], "dataLabels" : { - "rotation" : -90, "enabled" : "true", "align" : "right", - "style" : { - "fontFamily" : "Verdana, sans-serif", - "fontSize" : "13px" - }, "color" : "#FFFFFF", "format" : "{point.y:.0f}", - "y" : 10 + "rotation" : -90, + "y" : 10, + "style" : { + "fontSize" : "13px", + "fontFamily" : "Verdana, sans-serif" + } }, "name" : "Contributions" } ], + "subtitle" : { + "text" : "Last updated at 2020-02-24 13:16:34 GMT" + }, + "legend" : { + "enabled" : "false" + }, "xAxis" : { + "type" : "category", "labels" : { "style" : { "fontFamily" : "Verdana, sans-serif", "fontSize" : "13px" } - }, - "type" : "category" - }, - "yAxis" : { - "title" : { - "text" : null - }, - "min" : 0 - }, - "chart" : { - "type" : "column" - }, - "subtitle" : { - "text" : "Last updated at 2020-02-24 12:57:12 GMT" + } } } diff --git a/stats/pwc-language-breakdown.json b/stats/pwc-language-breakdown.json index afb5773e9a..f3d96a1c5e 100644 --- a/stats/pwc-language-breakdown.json +++ b/stats/pwc-language-breakdown.json @@ -1,22 +1,21 @@ { "subtitle" : { - "text" : "Click the columns to drilldown the language breakdown. Last updated at 2020-02-24 12:57:12 GMT" + "text" : "Click the columns to drilldown the language breakdown. Last updated at 2020-02-24 13:16:34 GMT" }, - "chart" : { - "type" : "column" - }, - "yAxis" : { - "title" : { - "text" : "Total Solutions" - } + "legend" : { + "enabled" : "false" }, "xAxis" : { "type" : "category" }, + "tooltip" : { + "headerFormat" : "", + "pointFormat" : "Challenge {point.name}: {point.y:f}
", + "followPointer" : "true" + }, "drilldown" : { "series" : [ { - "name" : "001", "id" : "001", "data" : [ [ @@ -31,9 +30,11 @@ "Blog", 11 ] - ] + ], + "name" : "001" }, { + "name" : "002", "data" : [ [ "Perl", @@ -48,12 +49,10 @@ 10 ] ], - "id" : "002", - "name" : "002" + "id" : "002" }, { "id" : "003", - "name" : "003", "data" : [ [ "Perl", @@ -67,10 +66,10 @@ "Blog", 9 ] - ] + ], + "name" : "003" }, { - "name" : "004", "id" : "004", "data" : [ [ @@ -85,7 +84,8 @@ "Blog", 10 ] - ] + ], + "name" : "004" }, { "data" : [ @@ -102,10 +102,11 @@ 12 ] ], - "name" : "005", - "id" : "005" + "id" : "005", + "name" : "005" }, { + "id" : "006", "data" : [ [ "Perl", @@ -120,10 +121,10 @@ 7 ] ], - "id" : "006", "name" : "006" }, { + "name" : "007", "data" : [ [ "Perl", @@ -138,10 +139,10 @@ 10 ] ], - "id" : "007", - "name" : "007" + "id" : "007" }, { + "name" : "008", "data" : [ [ "Perl", @@ -156,12 +157,10 @@ 12 ] ], - "name" : "008", "id" : "008" }, { "name" : "009", - "id" : "009", "data" : [ [ "Perl", @@ -175,11 +174,12 @@ "Blog", 13 ] - ] + ], + "id" : "009" }, { - "id" : "010", "name" : "010", + "id" : "010", "data" : [ [ "Perl", @@ -196,6 +196,7 @@ ] }, { + "name" : "011", "data" : [ [ "Perl", @@ -210,11 +211,9 @@ 10 ] ], - "name" : "011", "id" : "011" }, { - "name" : "012", "id" : "012", "data" : [ [ @@ -229,11 +228,11 @@ "Blog", 11 ] - ] + ], + "name" : "012" }, { "id" : "013", - "name" : "013", "data" : [ [ "Perl", @@ -247,9 +246,11 @@ "Blog", 13 ] - ] + ], + "name" : "013" }, { + "name" : "014", "data" : [ [ "Perl", @@ -264,10 +265,11 @@ 15 ] ], - "id" : "014", - "name" : "014" + "id" : "014" }, { + "name" : "015", + "id" : "015", "data" : [ [ "Perl", @@ -281,12 +283,9 @@ "Blog", 15 ] - ], - "name" : "015", - "id" : "015" + ] }, { - "name" : "016", "id" : "016", "data" : [ [ @@ -301,9 +300,12 @@ "Blog", 12 ] - ] + ], + "name" : "016" }, { + "name" : "017", + "id" : "017", "data" : [ [ "Perl", @@ -317,9 +319,7 @@ "Blog", 12 ] - ], - "id" : "017", - "name" : "017" + ] }, { "name" : "018", @@ -340,6 +340,7 @@ ] }, { + "name" : "019", "data" : [ [ "Perl", @@ -354,12 +355,11 @@ 13 ] ], - "name" : "019", "id" : "019" }, { - "id" : "020", "name" : "020", + "id" : "020", "data" : [ [ "Perl", @@ -394,6 +394,7 @@ ] }, { + "id" : "022", "data" : [ [ "Perl", @@ -408,11 +409,9 @@ 10 ] ], - "id" : "022", "name" : "022" }, { - "name" : "023", "id" : "023", "data" : [ [ @@ -427,11 +426,11 @@ "Blog", 12 ] - ] + ], + "name" : "023" }, { "name" : "024", - "id" : "024", "data" : [ [ "Perl", @@ -445,10 +444,10 @@ "Blog", 11 ] - ] + ], + "id" : "024" }, { - "id" : "025", "name" : "025", "data" : [ [ @@ -463,11 +462,11 @@ "Blog", 12 ] - ] + ], + "id" : "025" }, { "id" : "026", - "name" : "026", "data" : [ [ "Perl", @@ -481,9 +480,12 @@ "Blog", 10 ] - ] + ], + "name" : "026" }, { + "name" : "027", + "id" : "027", "data" : [ [ "Perl", @@ -497,11 +499,10 @@ "Blog", 9 ] - ], - "id" : "027", - "name" : "027" + ] }, { + "name" : "028", "data" : [ [ "Perl", @@ -516,10 +517,11 @@ 9 ] ], - "id" : "028", - "name" : "028" + "id" : "028" }, { + "name" : "029", + "id" : "029", "data" : [ [ "Perl", @@ -533,13 +535,10 @@ "Blog", 12 ] - ], - "name" : "029", - "id" : "029" + ] }, { "name" : "030", - "id" : "030", "data" : [ [ "Perl", @@ -553,7 +552,8 @@ "Blog", 10 ] - ] + ], + "id" : "030" }, { "data" : [ @@ -592,8 +592,6 @@ ] }, { - "name" : "033", - "id" : "033", "data" : [ [ "Perl", @@ -607,9 +605,12 @@ "Blog", 10 ] - ] + ], + "id" : "033", + "name" : "033" }, { + "name" : "034", "data" : [ [ "Perl", @@ -624,11 +625,9 @@ 11 ] ], - "name" : "034", "id" : "034" }, { - "name" : "035", "id" : "035", "data" : [ [ @@ -643,10 +642,10 @@ "Blog", 9 ] - ] + ], + "name" : "035" }, { - "id" : "036", "name" : "036", "data" : [ [ @@ -661,9 +660,11 @@ "Blog", 10 ] - ] + ], + "id" : "036" }, { + "id" : "037", "data" : [ [ "Perl", @@ -678,10 +679,10 @@ 9 ] ], - "name" : "037", - "id" : "037" + "name" : "037" }, { + "id" : "038", "data" : [ [ "Perl", @@ -696,10 +697,10 @@ 11 ] ], - "id" : "038", "name" : "038" }, { + "name" : "039", "data" : [ [ "Perl", @@ -714,8 +715,7 @@ 12 ] ], - "id" : "039", - "name" : "039" + "id" : "039" }, { "data" : [ @@ -732,10 +732,12 @@ 9 ] ], - "name" : "040", - "id" : "040" + "id" : "040", + "name" : "040" }, { + "name" : "041", + "id" : "041", "data" : [ [ "Perl", @@ -749,11 +751,10 @@ "Blog", 8 ] - ], - "id" : "041", - "name" : "041" + ] }, { + "name" : "042", "data" : [ [ "Perl", @@ -768,10 +769,11 @@ 11 ] ], - "name" : "042", "id" : "042" }, { + "name" : "043", + "id" : "043", "data" : [ [ "Perl", @@ -785,11 +787,10 @@ "Blog", 10 ] - ], - "name" : "043", - "id" : "043" + ] }, { + "id" : "044", "data" : [ [ "Perl", @@ -804,12 +805,9 @@ 10 ] ], - "name" : "044", - "id" : "044" + "name" : "044" }, { - "name" : "045", - "id" : "045", "data" : [ [ "Perl", @@ -823,10 +821,11 @@ "Blog", 11 ] - ] + ], + "id" : "045", + "name" : "045" }, { - "name" : "046", "id" : "046", "data" : [ [ @@ -841,7 +840,8 @@ "Blog", 9 ] - ] + ], + "name" : "046" }, { "name" : "047", @@ -863,7 +863,6 @@ }, { "id" : "048", - "name" : "048", "data" : [ [ "Perl", @@ -877,15 +876,15 @@ "Blog", 11 ] - ] + ], + "name" : "048" }, { "id" : "049", - "name" : "049", "data" : [ [ "Perl", - 3 + 5 ], [ "Raku", @@ -895,64 +894,63 @@ "Blog", 2 ] - ] + ], + "name" : "049" } ] }, "series" : [ { - "name" : "Perl Weekly Challenge Languages", - "colorByPoint" : "true", "data" : [ { - "name" : "#001", + "y" : 140, "drilldown" : "001", - "y" : 140 + "name" : "#001" }, { - "name" : "#002", + "y" : 109, "drilldown" : "002", - "y" : 109 + "name" : "#002" }, { + "name" : "#003", "drilldown" : "003", - "y" : 71, - "name" : "#003" + "y" : 71 }, { - "drilldown" : "004", "y" : 91, - "name" : "#004" + "name" : "#004", + "drilldown" : "004" }, { + "name" : "#005", "drilldown" : "005", - "y" : 71, - "name" : "#005" + "y" : 71 }, { - "name" : "#006", "y" : 48, - "drilldown" : "006" + "drilldown" : "006", + "name" : "#006" }, { - "y" : 56, + "name" : "#007", "drilldown" : "007", - "name" : "#007" + "y" : 56 }, { "y" : 70, - "drilldown" : "008", - "name" : "#008" + "name" : "#008", + "drilldown" : "008" }, { - "name" : "#009", "drilldown" : "009", + "name" : "#009", "y" : 68 }, { - "drilldown" : "010", "y" : 60, - "name" : "#010" + "name" : "#010", + "drilldown" : "010" }, { "name" : "#011", @@ -960,14 +958,14 @@ "y" : 79 }, { + "name" : "#012", "drilldown" : "012", - "y" : 83, - "name" : "#012" + "y" : 83 }, { "y" : 76, - "drilldown" : "013", - "name" : "#013" + "name" : "#013", + "drilldown" : "013" }, { "name" : "#014", @@ -980,24 +978,24 @@ "name" : "#015" }, { + "y" : 66, "name" : "#016", - "drilldown" : "016", - "y" : 66 + "drilldown" : "016" }, { "y" : 79, - "drilldown" : "017", - "name" : "#017" + "name" : "#017", + "drilldown" : "017" }, { - "name" : "#018", + "y" : 76, "drilldown" : "018", - "y" : 76 + "name" : "#018" }, { - "name" : "#019", "y" : 95, - "drilldown" : "019" + "drilldown" : "019", + "name" : "#019" }, { "name" : "#020", @@ -1011,82 +1009,82 @@ }, { "y" : 63, - "drilldown" : "022", - "name" : "#022" + "name" : "#022", + "drilldown" : "022" }, { - "name" : "#023", "y" : 91, + "name" : "#023", "drilldown" : "023" }, { + "name" : "#024", "drilldown" : "024", - "y" : 70, - "name" : "#024" + "y" : 70 }, { - "name" : "#025", "y" : 55, - "drilldown" : "025" + "drilldown" : "025", + "name" : "#025" }, { - "name" : "#026", "y" : 70, + "name" : "#026", "drilldown" : "026" }, { - "y" : 58, + "name" : "#027", "drilldown" : "027", - "name" : "#027" + "y" : 58 }, { - "name" : "#028", "y" : 78, - "drilldown" : "028" + "drilldown" : "028", + "name" : "#028" }, { - "name" : "#029", + "y" : 77, "drilldown" : "029", - "y" : 77 + "name" : "#029" }, { + "name" : "#030", "drilldown" : "030", - "y" : 115, - "name" : "#030" + "y" : 115 }, { "name" : "#031", - "y" : 87, - "drilldown" : "031" + "drilldown" : "031", + "y" : 87 }, { "drilldown" : "032", - "y" : 92, - "name" : "#032" + "name" : "#032", + "y" : 92 }, { - "name" : "#033", "y" : 108, + "name" : "#033", "drilldown" : "033" }, { - "drilldown" : "034", "y" : 60, + "drilldown" : "034", "name" : "#034" }, { "drilldown" : "035", - "y" : 60, - "name" : "#035" + "name" : "#035", + "y" : 60 }, { - "name" : "#036", "drilldown" : "036", + "name" : "#036", "y" : 61 }, { - "name" : "#037", "y" : 63, + "name" : "#037", "drilldown" : "037" }, { @@ -1101,43 +1099,43 @@ }, { "y" : 66, - "drilldown" : "040", - "name" : "#040" + "name" : "#040", + "drilldown" : "040" }, { "name" : "#041", - "y" : 69, - "drilldown" : "041" + "drilldown" : "041", + "y" : 69 }, { - "drilldown" : "042", "y" : 88, - "name" : "#042" + "name" : "#042", + "drilldown" : "042" }, { + "y" : 65, "name" : "#043", - "drilldown" : "043", - "y" : 65 + "drilldown" : "043" }, { - "y" : 81, + "name" : "#044", "drilldown" : "044", - "name" : "#044" + "y" : 81 }, { - "name" : "#045", "drilldown" : "045", + "name" : "#045", "y" : 94 }, { + "y" : 82, "name" : "#046", - "drilldown" : "046", - "y" : 82 + "drilldown" : "046" }, { - "name" : "#047", "y" : 80, - "drilldown" : "047" + "drilldown" : "047", + "name" : "#047" }, { "y" : 101, @@ -1147,29 +1145,31 @@ { "name" : "#049", "drilldown" : "049", - "y" : 11 + "y" : 13 } - ] + ], + "name" : "Perl Weekly Challenge Languages", + "colorByPoint" : "true" } ], - "plotOptions" : { - "series" : { - "dataLabels" : { - "format" : "{point.y}", - "enabled" : 1 - }, - "borderWidth" : 0 - } - }, - "legend" : { - "enabled" : "false" + "chart" : { + "type" : "column" }, - "tooltip" : { - "headerFormat" : "", - "followPointer" : "true", - "pointFormat" : "Challenge {point.name}: {point.y:f}
" + "yAxis" : { + "title" : { + "text" : "Total Solutions" + } }, "title" : { "text" : "Perl Weekly Challenge Language" + }, + "plotOptions" : { + "series" : { + "borderWidth" : 0, + "dataLabels" : { + "enabled" : 1, + "format" : "{point.y}" + } + } } } diff --git a/stats/pwc-leaders.json b/stats/pwc-leaders.json index 727c5c8728..591af9458c 100644 --- a/stats/pwc-leaders.json +++ b/stats/pwc-leaders.json @@ -1,299 +1,34 @@ { + "xAxis" : { + "type" : "category" + }, "legend" : { "enabled" : "false" }, - "tooltip" : { - "followPointer" : "true", - "pointFormat" : "{point.name}: {point.y:f}
", - "headerFormat" : "" + "subtitle" : { + "text" : "Click the columns to drilldown the score breakdown. Last updated at 2020-02-24 13:16:34 GMT" + }, + "plotOptions" : { + "series" : { + "dataLabels" : { + "format" : "{point.y}", + "enabled" : 1 + }, + "borderWidth" : 0 + } }, "title" : { "text" : "Perl Weekly Challenge Leaders (TOP 50)" }, - "subtitle" : { - "text" : "Click the columns to drilldown the score breakdown. Last updated at 2020-02-24 12:57:12 GMT" - }, - "xAxis" : { - "type" : "category" - }, "yAxis" : { "title" : { "text" : "Total Score" } }, - "chart" : { - "type" : "column" - }, - "series" : [ - { - "name" : "Perl Weekly Challenge Leaders", - "colorByPoint" : "true", - "data" : [ - { - "name" : "#1: Laurent Rosenfeld", - "drilldown" : "Laurent Rosenfeld", - "y" : 586 - }, - { - "drilldown" : "Jaldhar H. Vyas", - "y" : 396, - "name" : "#2: Jaldhar H. Vyas" - }, - { - "name" : "#3: Ruben Westerberg", - "drilldown" : "Ruben Westerberg", - "y" : 380 - }, - { - "name" : "#4: Joelle Maslak", - "drilldown" : "Joelle Maslak", - "y" : 334 - }, - { - "name" : "#5: Adam Russell", - "drilldown" : "Adam Russell", - "y" : 300 - }, - { - "drilldown" : "Arne Sommer", - "y" : 298, - "name" : "#6: Arne Sommer" - }, - { - "y" : 286, - "drilldown" : "Roger Bell West", - "name" : "#7: Roger Bell West" - }, - { - "drilldown" : "E. Choroba", - "y" : 258, - "name" : "#8: E. Choroba" - }, - { - "name" : "#9: Athanasius", - "drilldown" : "Athanasius", - "y" : 220 - }, - { - "name" : "#10: Andrezgz", - "y" : 194, - "drilldown" : "Andrezgz" - }, - { - "y" : 192, - "drilldown" : "Simon Proctor", - "name" : "#11: Simon Proctor" - }, - { - "name" : "#12: Ryan Thompson", - "y" : 184, - "drilldown" : "Ryan Thompson" - }, - { - "name" : "#13: Javier Luque", - "drilldown" : "Javier Luque", - "y" : 180 - }, - { - "name" : "#14: Duncan C. White", - "y" : 168, - "drilldown" : "Duncan C. White" - }, - { - "name" : "#15: Dave Jacoby", - "y" : 166, - "drilldown" : "Dave Jacoby" - }, - { - "name" : "#16: Kian-Meng Ang", - "y" : 162, - "drilldown" : "Kian-Meng Ang" - }, - { - "name" : "#17: Kevin Colyer", - "drilldown" : "Kevin Colyer", - "y" : 136 - }, - { - "name" : "#18: Steven Wilson", - "y" : 134, - "drilldown" : "Steven Wilson" - }, - { - "drilldown" : "Duane Powell", - "y" : 132, - "name" : "#19: Duane Powell" - }, - { - "y" : 128, - "drilldown" : "Colin Crain", - "name" : "#20: Colin Crain" - }, - { - "drilldown" : "Noud Aldenhoven", - "y" : 116, - "name" : "#21: Noud Aldenhoven" - }, - { - "name" : "#22: Yet Ebreo", - "drilldown" : "Yet Ebreo", - "y" : 114 - }, - { - "drilldown" : "Burkhard Nickels", - "y" : 108, - "name" : "#23: Burkhard Nickels" - }, - { - "name" : "#24: Francis Whittle", - "y" : 96, - "drilldown" : "Francis Whittle" - }, - { - "name" : "#25: Ulrich Rieke", - "drilldown" : "Ulrich Rieke", - "y" : 94 - }, - { - "drilldown" : "Lubos Kolouch", - "y" : 92, - "name" : "#26: Lubos Kolouch" - }, - { - "drilldown" : "Feng Chang", - "y" : 88, - "name" : "#27: Feng Chang" - }, - { - "name" : "#28: Daniel Mantovani", - "drilldown" : "Daniel Mantovani", - "y" : 86 - }, - { - "drilldown" : "Mark Senn", - "y" : 80, - "name" : "#29: Mark Senn" - }, - { - "name" : "#30: Gustavo Chaves", - "drilldown" : "Gustavo Chaves", - "y" : 72 - }, - { - "name" : "#31: Markus Holzer", - "drilldown" : "Markus Holzer", - "y" : 70 - }, - { - "name" : "#32: Yozen Hernandez", - "y" : 70, - "drilldown" : "Yozen Hernandez" - }, - { - "name" : "#33: Guillermo Ramos", - "drilldown" : "Guillermo Ramos", - "y" : 64 - }, - { - "name" : "#34: Jo Christian Oterhals", - "y" : 60, - "drilldown" : "Jo Christian Oterhals" - }, - { - "drilldown" : "Dave Cross", - "y" : 58, - "name" : "#35: Dave Cross" - }, - { - "y" : 56, - "drilldown" : "Ozzy", - "name" : "#36: Ozzy" - }, - { - "name" : "#37: Alicia Bielsa", - "drilldown" : "Alicia Bielsa", - "y" : 54 - }, - { - "drilldown" : "Saif Ahmed", - "y" : 54, - "name" : "#38: Saif Ahmed" - }, - { - "name" : "#39: Dr James A. Smith", - "drilldown" : "Dr James A. Smith", - "y" : 52 - }, - { - "y" : 52, - "drilldown" : "Randy Lauen", - "name" : "#40: Randy Lauen" - }, - { - "name" : "#41: Daniel Mita", - "drilldown" : "Daniel Mita", - "y" : 48 - }, - { - "name" : "#42: Mark Anderson", - "drilldown" : "Mark Anderson", - "y" : 46 - }, - { - "drilldown" : "Luca Ferrari", - "y" : 44, - "name" : "#43: Luca Ferrari" - }, - { - "drilldown" : "Veesh Goldman", - "y" : 44, - "name" : "#44: Veesh Goldman" - }, - { - "y" : 38, - "drilldown" : "Lars Balker", - "name" : "#45: Lars Balker" - }, - { - "drilldown" : "Wanderdoc", - "y" : 36, - "name" : "#46: Wanderdoc" - }, - { - "drilldown" : "Kivanc Yazan", - "y" : 32, - "name" : "#47: Kivanc Yazan" - }, - { - "y" : 32, - "drilldown" : "Nick Logan", - "name" : "#48: Nick Logan" - }, - { - "name" : "#49: Walt Mankowski", - "drilldown" : "Walt Mankowski", - "y" : 30 - }, - { - "name" : "#50: Nazareno Delucca", - "drilldown" : "Nazareno Delucca", - "y" : 28 - } - ] - } - ], - "plotOptions" : { - "series" : { - "borderWidth" : 0, - "dataLabels" : { - "enabled" : 1, - "format" : "{point.y}" - } - } - }, "drilldown" : { "series" : [ { + "name" : "Laurent Rosenfeld", "data" : [ [ "Blog", @@ -308,12 +43,9 @@ 95 ] ], - "id" : "Laurent Rosenfeld", - "name" : "Laurent Rosenfeld" + "id" : "Laurent Rosenfeld" }, { - "id" : "Jaldhar H. Vyas", - "name" : "Jaldhar H. Vyas", "data" : [ [ "Blog", @@ -327,9 +59,12 @@ "Raku", 84 ] - ] + ], + "id" : "Jaldhar H. Vyas", + "name" : "Jaldhar H. Vyas" }, { + "id" : "Ruben Westerberg", "data" : [ [ "Perl", @@ -340,12 +75,9 @@ 95 ] ], - "id" : "Ruben Westerberg", "name" : "Ruben Westerberg" }, { - "id" : "Joelle Maslak", - "name" : "Joelle Maslak", "data" : [ [ "Blog", @@ -359,11 +91,12 @@ "Raku", 81 ] - ] + ], + "id" : "Joelle Maslak", + "name" : "Joelle Maslak" }, { "id" : "Adam Russell", - "name" : "Adam Russell", "data" : [ [ "Blog", @@ -377,10 +110,10 @@ "Raku", 9 ] - ] + ], + "name" : "Adam Russell" }, { - "id" : "Arne Sommer", "name" : "Arne Sommer", "data" : [ [ @@ -395,11 +128,11 @@ "Raku", 96 ] - ] + ], + "id" : "Arne Sommer" }, { "id" : "Roger Bell West", - "name" : "Roger Bell West", "data" : [ [ "Blog", @@ -413,9 +146,12 @@ "Raku", 47 ] - ] + ], + "name" : "Roger Bell West" }, { + "name" : "E. Choroba", + "id" : "E. Choroba", "data" : [ [ "Blog", @@ -425,11 +161,10 @@ "Perl", 89 ] - ], - "name" : "E. Choroba", - "id" : "E. Choroba" + ] }, { + "name" : "Athanasius", "data" : [ [ "Blog", @@ -444,22 +179,19 @@ 39 ] ], - "id" : "Athanasius", - "name" : "Athanasius" + "id" : "Athanasius" }, { - "id" : "Andrezgz", "name" : "Andrezgz", "data" : [ [ "Perl", 97 ] - ] + ], + "id" : "Andrezgz" }, { - "id" : "Simon Proctor", - "name" : "Simon Proctor", "data" : [ [ "Blog", @@ -473,9 +205,13 @@ "Raku", 83 ] - ] + ], + "id" : "Simon Proctor", + "name" : "Simon Proctor" }, { + "name" : "Ryan Thompson", + "id" : "Ryan Thompson", "data" : [ [ "Blog", @@ -489,11 +225,10 @@ "Raku", 34 ] - ], - "name" : "Ryan Thompson", - "id" : "Ryan Thompson" + ] }, { + "name" : "Javier Luque", "data" : [ [ "Blog", @@ -508,12 +243,9 @@ 36 ] ], - "id" : "Javier Luque", - "name" : "Javier Luque" + "id" : "Javier Luque" }, { - "id" : "Duncan C. White", - "name" : "Duncan C. White", "data" : [ [ "Blog", @@ -523,9 +255,13 @@ "Perl", 83 ] - ] + ], + "id" : "Duncan C. White", + "name" : "Duncan C. White" }, { + "name" : "Dave Jacoby", + "id" : "Dave Jacoby", "data" : [ [ "Blog", @@ -539,13 +275,10 @@ "Raku", 1 ] - ], - "name" : "Dave Jacoby", - "id" : "Dave Jacoby" + ] }, { "name" : "Kian-Meng Ang", - "id" : "Kian-Meng Ang", "data" : [ [ "Blog", @@ -555,11 +288,11 @@ "Perl", 38 ] - ] + ], + "id" : "Kian-Meng Ang" }, { "name" : "Kevin Colyer", - "id" : "Kevin Colyer", "data" : [ [ "Blog", @@ -573,9 +306,11 @@ "Raku", 65 ] - ] + ], + "id" : "Kevin Colyer" }, { + "name" : "Steven Wilson", "data" : [ [ "Blog", @@ -590,18 +325,17 @@ 1 ] ], - "name" : "Steven Wilson", "id" : "Steven Wilson" }, { - "id" : "Duane Powell", "name" : "Duane Powell", "data" : [ [ "Perl", 66 ] - ] + ], + "id" : "Duane Powell" }, { "data" : [ @@ -614,10 +348,11 @@ 14 ] ], - "name" : "Colin Crain", - "id" : "Colin Crain" + "id" : "Colin Crain", + "name" : "Colin Crain" }, { + "id" : "Noud Aldenhoven", "data" : [ [ "Blog", @@ -628,7 +363,6 @@ 57 ] ], - "id" : "Noud Aldenhoven", "name" : "Noud Aldenhoven" }, { @@ -646,12 +380,12 @@ 21 ] ], - "name" : "Yet Ebreo", - "id" : "Yet Ebreo" + "id" : "Yet Ebreo", + "name" : "Yet Ebreo" }, { - "id" : "Burkhard Nickels", "name" : "Burkhard Nickels", + "id" : "Burkhard Nickels", "data" : [ [ "Blog", @@ -668,7 +402,6 @@ ] }, { - "name" : "Francis Whittle", "id" : "Francis Whittle", "data" : [ [ @@ -679,10 +412,10 @@ "Raku", 39 ] - ] + ], + "name" : "Francis Whittle" }, { - "id" : "Ulrich Rieke", "name" : "Ulrich Rieke", "data" : [ [ @@ -693,17 +426,18 @@ "Raku", 29 ] - ] + ], + "id" : "Ulrich Rieke" }, { + "name" : "Lubos Kolouch", + "id" : "Lubos Kolouch", "data" : [ [ "Perl", 46 - ] - ], - "id" : "Lubos Kolouch", - "name" : "Lubos Kolouch" + ] + ] }, { "data" : [ @@ -716,18 +450,18 @@ 23 ] ], - "name" : "Feng Chang", - "id" : "Feng Chang" + "id" : "Feng Chang", + "name" : "Feng Chang" }, { - "id" : "Daniel Mantovani", - "name" : "Daniel Mantovani", "data" : [ [ "Perl", 43 ] - ] + ], + "id" : "Daniel Mantovani", + "name" : "Daniel Mantovani" }, { "name" : "Mark Senn", @@ -745,7 +479,6 @@ }, { "id" : "Gustavo Chaves", - "name" : "Gustavo Chaves", "data" : [ [ "Blog", @@ -755,11 +488,11 @@ "Perl", 32 ] - ] + ], + "name" : "Gustavo Chaves" }, { "id" : "Markus Holzer", - "name" : "Markus Holzer", "data" : [ [ "Perl", @@ -769,11 +502,11 @@ "Raku", 32 ] - ] + ], + "name" : "Markus Holzer" }, { "id" : "Yozen Hernandez", - "name" : "Yozen Hernandez", "data" : [ [ "Blog", @@ -783,17 +516,18 @@ "Perl", 21 ] - ] + ], + "name" : "Yozen Hernandez" }, { + "name" : "Guillermo Ramos", + "id" : "Guillermo Ramos", "data" : [ [ "Perl", 32 ] - ], - "name" : "Guillermo Ramos", - "id" : "Guillermo Ramos" + ] }, { "data" : [ @@ -810,10 +544,11 @@ 17 ] ], - "name" : "Jo Christian Oterhals", - "id" : "Jo Christian Oterhals" + "id" : "Jo Christian Oterhals", + "name" : "Jo Christian Oterhals" }, { + "id" : "Dave Cross", "data" : [ [ "Blog", @@ -824,20 +559,20 @@ 27 ] ], - "id" : "Dave Cross", "name" : "Dave Cross" }, { "name" : "Ozzy", - "id" : "Ozzy", "data" : [ [ "Raku", 28 ] - ] + ], + "id" : "Ozzy" }, { + "id" : "Alicia Bielsa", "data" : [ [ "Perl", @@ -848,12 +583,10 @@ 3 ] ], - "id" : "Alicia Bielsa", "name" : "Alicia Bielsa" }, { "id" : "Saif Ahmed", - "name" : "Saif Ahmed", "data" : [ [ "Blog", @@ -863,10 +596,10 @@ "Perl", 26 ] - ] + ], + "name" : "Saif Ahmed" }, { - "name" : "Dr James A. Smith", "id" : "Dr James A. Smith", "data" : [ [ @@ -877,10 +610,10 @@ "Raku", 10 ] - ] + ], + "name" : "Dr James A. Smith" }, { - "id" : "Randy Lauen", "name" : "Randy Lauen", "data" : [ [ @@ -891,11 +624,11 @@ "Raku", 17 ] - ] + ], + "id" : "Randy Lauen" }, { "id" : "Daniel Mita", - "name" : "Daniel Mita", "data" : [ [ "Perl", @@ -905,9 +638,11 @@ "Raku", 21 ] - ] + ], + "name" : "Daniel Mita" }, { + "id" : "Mark Anderson", "data" : [ [ "Perl", @@ -918,10 +653,10 @@ 9 ] ], - "name" : "Mark Anderson", - "id" : "Mark Anderson" + "name" : "Mark Anderson" }, { + "name" : "Luca Ferrari", "data" : [ [ "Blog", @@ -932,10 +667,11 @@ 14 ] ], - "name" : "Luca Ferrari", "id" : "Luca Ferrari" }, { + "name" : "Veesh Goldman", + "id" : "Veesh Goldman", "data" : [ [ "Blog", @@ -949,43 +685,41 @@ "Raku", 2 ] - ], - "id" : "Veesh Goldman", - "name" : "Veesh Goldman" + ] }, { + "id" : "Wanderdoc", "data" : [ [ "Perl", - 15 - ], - [ - "Raku", - 4 + 20 ] ], - "name" : "Lars Balker", - "id" : "Lars Balker" + "name" : "Wanderdoc" }, { "data" : [ [ "Perl", - 18 + 15 + ], + [ + "Raku", + 4 ] ], - "id" : "Wanderdoc", - "name" : "Wanderdoc" + "id" : "Lars Balker", + "name" : "Lars Balker" }, { - "id" : "Kivanc Yazan", "name" : "Kivanc Yazan", "data" : [ [ "Perl", 16 ] - ] + ], + "id" : "Kivanc Yazan" }, { "data" : [ @@ -998,22 +732,22 @@ 8 ] ], - "name" : "Nick Logan", - "id" : "Nick Logan" + "id" : "Nick Logan", + "name" : "Nick Logan" }, { - "name" : "Walt Mankowski", - "id" : "Walt Mankowski", "data" : [ [ "Perl", 15 ] - ] + ], + "id" : "Walt Mankowski", + "name" : "Walt Mankowski" }, { - "id" : "Nazareno Delucca", "name" : "Nazareno Delucca", + "id" : "Nazareno Delucca", "data" : [ [ "Perl", @@ -1022,5 +756,271 @@ ] } ] + }, + "series" : [ + { + "colorByPoint" : "true", + "name" : "Perl Weekly Challenge Leaders", + "data" : [ + { + "y" : 586, + "drilldown" : "Laurent Rosenfeld", + "name" : "#1: Laurent Rosenfeld" + }, + { + "y" : 396, + "drilldown" : "Jaldhar H. Vyas", + "name" : "#2: Jaldhar H. Vyas" + }, + { + "name" : "#3: Ruben Westerberg", + "drilldown" : "Ruben Westerberg", + "y" : 380 + }, + { + "y" : 334, + "drilldown" : "Joelle Maslak", + "name" : "#4: Joelle Maslak" + }, + { + "drilldown" : "Adam Russell", + "name" : "#5: Adam Russell", + "y" : 300 + }, + { + "y" : 298, + "drilldown" : "Arne Sommer", + "name" : "#6: Arne Sommer" + }, + { + "drilldown" : "Roger Bell West", + "name" : "#7: Roger Bell West", + "y" : 286 + }, + { + "drilldown" : "E. Choroba", + "name" : "#8: E. Choroba", + "y" : 258 + }, + { + "y" : 220, + "name" : "#9: Athanasius", + "drilldown" : "Athanasius" + }, + { + "name" : "#10: Andrezgz", + "drilldown" : "Andrezgz", + "y" : 194 + }, + { + "name" : "#11: Simon Proctor", + "drilldown" : "Simon Proctor", + "y" : 192 + }, + { + "drilldown" : "Ryan Thompson", + "name" : "#12: Ryan Thompson", + "y" : 184 + }, + { + "y" : 180, + "drilldown" : "Javier Luque", + "name" : "#13: Javier Luque" + }, + { + "name" : "#14: Duncan C. White", + "drilldown" : "Duncan C. White", + "y" : 168 + }, + { + "drilldown" : "Dave Jacoby", + "name" : "#15: Dave Jacoby", + "y" : 166 + }, + { + "name" : "#16: Kian-Meng Ang", + "drilldown" : "Kian-Meng Ang", + "y" : 162 + }, + { + "drilldown" : "Kevin Colyer", + "name" : "#17: Kevin Colyer", + "y" : 136 + }, + { + "y" : 134, + "drilldown" : "Steven Wilson", + "name" : "#18: Steven Wilson" + }, + { + "y" : 132, + "name" : "#19: Duane Powell", + "drilldown" : "Duane Powell" + }, + { + "y" : 128, + "drilldown" : "Colin Crain", + "name" : "#20: Colin Crain" + }, + { + "name" : "#21: Noud Aldenhoven", + "drilldown" : "Noud Aldenhoven", + "y" : 116 + }, + { + "y" : 114, + "drilldown" : "Yet Ebreo", + "name" : "#22: Yet Ebreo" + }, + { + "drilldown" : "Burkhard Nickels", + "name" : "#23: Burkhard Nickels", + "y" : 108 + }, + { + "y" : 96, + "drilldown" : "Francis Whittle", + "name" : "#24: Francis Whittle" + }, + { + "name" : "#25: Ulrich Rieke", + "drilldown" : "Ulrich Rieke", + "y" : 94 + }, + { + "y" : 92, + "name" : "#26: Lubos Kolouch", + "drilldown" : "Lubos Kolouch" + }, + { + "drilldown" : "Feng Chang", + "name" : "#27: Feng Chang", + "y" : 88 + }, + { + "name" : "#28: Daniel Mantovani", + "drilldown" : "Daniel Mantovani", + "y" : 86 + }, + { + "y" : 80, + "name" : "#29: Mark Senn", + "drilldown" : "Mark Senn" + }, + { + "y" : 72, + "drilldown" : "Gustavo Chaves", + "name" : "#30: Gustavo Chaves" + }, + { + "drilldown" : "Markus Holzer", + "name" : "#31: Markus Holzer", + "y" : 70 + }, + { + "y" : 70, + "drilldown" : "Yozen Hernandez", + "name" : "#32: Yozen Hernandez" + }, + { + "name" : "#33: Guillermo Ramos", + "drilldown" : "Guillermo Ramos", + "y" :