From 9571f967ddd4d11a0195c2b9f8f3fbb63fad9a15 Mon Sep 17 00:00:00 2001 From: Mohammad S Anwar Date: Thu, 22 Apr 2021 16:30:57 +0100 Subject: - Added solutions by Ulrich Rieke. --- challenge-109/ulrich-rieke/cpp/ch-1.cpp | 33 + challenge-109/ulrich-rieke/haskell/ch-1.hs | 10 + challenge-109/ulrich-rieke/perl/ch-1.pl | 34 + challenge-109/ulrich-rieke/raku/ch-1.raku | 30 + challenge-109/ulrich-rieke/raku/ch-2.raku | 114 ++ stats/pwc-current.json | 275 ++--- stats/pwc-language-breakdown-summary.json | 64 +- stats/pwc-language-breakdown.json | 1564 ++++++++++++++-------------- stats/pwc-leaders.json | 754 +++++++------- stats/pwc-summary-1-30.json | 54 +- stats/pwc-summary-121-150.json | 40 +- stats/pwc-summary-151-180.json | 118 +-- stats/pwc-summary-181-210.json | 40 +- stats/pwc-summary-211-240.json | 38 +- stats/pwc-summary-31-60.json | 110 +- stats/pwc-summary-61-90.json | 118 +-- stats/pwc-summary-91-120.json | 102 +- stats/pwc-summary.json | 34 +- 18 files changed, 1886 insertions(+), 1646 deletions(-) create mode 100644 challenge-109/ulrich-rieke/cpp/ch-1.cpp create mode 100644 challenge-109/ulrich-rieke/haskell/ch-1.hs create mode 100644 challenge-109/ulrich-rieke/perl/ch-1.pl create mode 100644 challenge-109/ulrich-rieke/raku/ch-1.raku create mode 100644 challenge-109/ulrich-rieke/raku/ch-2.raku diff --git a/challenge-109/ulrich-rieke/cpp/ch-1.cpp b/challenge-109/ulrich-rieke/cpp/ch-1.cpp new file mode 100644 index 0000000000..55a7a755a3 --- /dev/null +++ b/challenge-109/ulrich-rieke/cpp/ch-1.cpp @@ -0,0 +1,33 @@ +#include +#include +#include +#include +#include + +std::vector findDivisors( int n ) { + std::vector divisors ; + if ( n > 3 ) { + for ( int i = 2 ; i < n ; i++ ) { + if ( n % i == 0 ) { + divisors.push_back( i ) ; + } + } + } + return divisors ; +} + +int main( ) { + std::vector chowlanumbers ; + int n = 0 ; + while ( chowlanumbers.size( ) < 20 ) { + std::vector divs = findDivisors( ++n ) ; + if ( divs.size( ) == 0 ) + chowlanumbers.push_back( 0 ) ; + else + chowlanumbers.push_back( std::accumulate( divs.begin( ) , divs.end( ) , 0 )) ; + } + std::copy( chowlanumbers.begin( ) , chowlanumbers.end( ) , + std::ostream_iterator( std::cout , " " ) ) ; + std::cout << std::endl ; + return 0 ; +} diff --git a/challenge-109/ulrich-rieke/haskell/ch-1.hs b/challenge-109/ulrich-rieke/haskell/ch-1.hs new file mode 100644 index 0000000000..3c9c4b110c --- /dev/null +++ b/challenge-109/ulrich-rieke/haskell/ch-1.hs @@ -0,0 +1,10 @@ +module Challenge109 + where + +chowladivisors :: Int -> [Int] +chowladivisors n + |n `elem` [1 , 2 , 3] = [] + |otherwise = [d | d <- [2 .. n - 1] , mod n d == 0 ] + +solution :: [Int] +solution = take 20 $ map ( sum . chowladivisors) [1,2..] diff --git a/challenge-109/ulrich-rieke/perl/ch-1.pl b/challenge-109/ulrich-rieke/perl/ch-1.pl new file mode 100644 index 0000000000..a1772fa0b3 --- /dev/null +++ b/challenge-109/ulrich-rieke/perl/ch-1.pl @@ -0,0 +1,34 @@ +#!/usr/bin/perl ; +use strict ; +use warnings ; +use feature 'say' ; +use List::Util qw ( sum ) ; + +sub chowladivisors { + my $n = shift ; + if ( $n == 1 or $n == 2 or $n == 3 ) { + return ( ) ; + } + else { + my @divisors ; + for my $i (2 .. $n - 1) { + if ( $n % $i == 0 ) { + push @divisors , $i ; + } + } + return @divisors ; + } +} + +my @chowladivs = ( ) ; +my $n = 0 ; +while ( scalar @chowladivs < 20 ) { + my @divs = chowladivisors( ++$n ) ; + if ( scalar @divs == 0 ) { + push @chowladivs, 0 ; + } + else { + push @chowladivs , sum @divs ; + } +} +say join( ", " , @chowladivs ) ; diff --git a/challenge-109/ulrich-rieke/raku/ch-1.raku b/challenge-109/ulrich-rieke/raku/ch-1.raku new file mode 100644 index 0000000000..5d67b2fc41 --- /dev/null +++ b/challenge-109/ulrich-rieke/raku/ch-1.raku @@ -0,0 +1,30 @@ +use v6 ; + +sub chowladivisors( Int $n ) { + if ( $n (elem) Set( 1 , 2 , 3 ) ) { + return ( ) ; + } + else { + my @divisors = ( ) ; + for (2 .. $n - 1 ) -> $i { + if ( $n %% $i ) { + @divisors.push( $i ) ; + } + } + return @divisors ; + } +} + +my @chowlanumbers = ( ) ; +my $n = 0 ; +repeat { + $n++ ; + my @div = chowladivisors( $n ) ; + if ( @div ) { + @chowlanumbers.push( @div.sum ) ; + } + else { + @chowlanumbers.push( 0 ) ; + } +} until ( @chowlanumbers.elems == 20 ) ; +say @chowlanumbers ; diff --git a/challenge-109/ulrich-rieke/raku/ch-2.raku b/challenge-109/ulrich-rieke/raku/ch-2.raku new file mode 100644 index 0000000000..eff2027ee7 --- /dev/null +++ b/challenge-109/ulrich-rieke/raku/ch-2.raku @@ -0,0 +1,114 @@ +use v6 ; + +sub isValid( $theCombination ) { + if (( $theCombination[0].elems == 2 && $theCombination[1].elems == 3 + && $theCombination[2].elems == 3 && $theCombination[3].elems == 2 ) + && (($theCombination[0] (&) $theCombination[1]).elems == 1 && + ($theCombination[1] (&) $theCombination[2]).elems == 1 && + ($theCombination[2] (&) $theCombination[3]).elems == 1 )) { + my @intersections = ( ($theCombination[0] (&) $theCombination[1]) , + ($theCombination[1] (&) $theCombination[2]) , + ($theCombination[2] (&) $theCombination[3])) ; +#the intersections should be different from each other + return @intersections.unique.elems == 3 ; + } + else { + return False ; + } +} + +#find those combinations of 4 that are possible solutions, that is +#one combination of 2 at the beginning and the end and 2 combinations +#of 3 in the middle +sub is_possibleCombination( $aCombination ) { + if ( $aCombination[0].elems == 2 && $aCombination[1].elems == 3 + && $aCombination[2].elems == 3 && $aCombination[3].elems == 2 ) { + return True ; + } + return False ; +} + +my $numbers = (1 .. 7 ) ; +#we are interested in all those combinations of 2 and 3 numbers that +#share the same sum +my $commonSums = $numbers.combinations(2).map( {.sum} ) (&) + $numbers.combinations(3).map( {.sum } ) ; +my @two_elements = $numbers.combinations( 2 ).Array; +my @three_elements = $numbers.combinations( 3 ).Array ; +my @solutions ; #holds one or more valid solutions +#sum by sum , we check whether there are at least 2 different combinations +#of 2 or 3 numbers that add up to that sum. +for $commonSums.keys -> $sum { + my $combis_with_same_sum = Set.new( @two_elements.grep( + {.sum == $sum })) (|) + Set.new( @three_elements.grep( {.sum == $sum })) ; + if ( $combis_with_same_sum.keys.elems > 0 ) { +#if we have combinations of 2 and 3 numbers with the same sum we create +#combinations of 4, pick those with 2 pairs and 2 combinations of 3 and +#permutate them to see if there is a valid solution + my @possibleCombis ; + if ( $combis_with_same_sum.keys.grep( { .elems == 3 } ).elems >= 2 && + $combis_with_same_sum.keys.grep( { .elems == 2 } ).elems >= 2 ) { + @possibleCombis.push( $combis_with_same_sum.keys ) ; + } + for @possibleCombis -> $solution_candidate { + if ( $solution_candidate.elems > 4 ) { + my $fourCombis = $solution_candidate.combinations( 4 ) ; + for $fourCombis <-> $element { + for $element.Array <-> $subelement { + if ( is_possibleCombination( $subelement )) { + my $permus = $subelement.permutations ; + my @permulist = $permus.Array ; + for @permulist -> $permu { + if ( isValid( $permu ) ) { + @solutions.push( $permu ) ; + } + } + } + } + } + } + if ( $solution_candidate.elems == 4 ) { + if ( $solution_candidate.grep( {.elems == 2} ).elems == 2 + && $solution_candidate.grep( {.elems == 3} ).elems == 2 ) { + my $permus = $solution_candidate.permutations() ; + for $permus -> $permu { + if ( is_possibleCombination( $permu ) ) { + if ( isValid( $permu ) ) { + @solutions.push( $permu ) ; + } + } + } + } + } + } + } +} +#we have to "unwrap" the set intersection values by applying the .keys operator +#to the sets +for @solutions -> $quadruple { + my $sum = $quadruple[0].sum ; + my $b = $quadruple[0] (&) $quadruple[ 1 ] ; + $b = $b.keys[0] ; #"unwrap" the value and reassign! + my $a = $sum - $b ; + my $d = $quadruple[1] (&) $quadruple[2] ; + $d = $d.keys[ 0 ] ; + my $c = $sum - ($b + $d ) ; + my $f = $quadruple[2] (&) $quadruple[3] ; + $f = $f.keys[0] ; + my $e = $sum - ( $d + $f ) ; + my $g = $sum - $f ; + say "a = $a" ; + say "b = $b" ; + say "c = $c" ; + say "d = $d" ; + say "e = $e" ; + say "f = $f" ; + say "g = $g" ; + print "\n\n" ; + say "Box 1: a + b = $a + $b = {$a + $b}" ; + say "Box 2: b + c + d = $b + $c + $d = {$b + $c + $d}" ; + say "Box 3: d + e + f = $d + $e + $f = {$d + $e + $f}" ; + say "Box 4: f + g = $f + $g = {$f + $g}" ; + say "---------------------------------------------------------------------------" ; +} diff --git a/stats/pwc-current.json b/stats/pwc-current.json index 7cb9211317..594485aa98 100644 --- a/stats/pwc-current.json +++ b/stats/pwc-current.json @@ -1,8 +1,116 @@ { + "series" : [ + { + "colorByPoint" : 1, + "name" : "Perl Weekly Challenge - 109", + "data" : [ + { + "name" : "Dave Jacoby", + "y" : 3, + "drilldown" : "Dave Jacoby" + }, + { + "y" : 2, + "name" : "E. Choroba", + "drilldown" : "E. Choroba" + }, + { + "drilldown" : "Flavio Poletti", + "name" : "Flavio Poletti", + "y" : 4 + }, + { + "drilldown" : "James Smith", + "y" : 2, + "name" : "James Smith" + }, + { + "y" : 2, + "name" : "Jorg Sommrey", + "drilldown" : "Jorg Sommrey" + }, + { + "drilldown" : "Laurent Rosenfeld", + "name" : "Laurent Rosenfeld", + "y" : 5 + }, + { + "y" : 4, + "name" : "Luca Ferrari", + "drilldown" : "Luca Ferrari" + }, + { + "y" : 2, + "name" : "Mark Anderson", + "drilldown" : "Mark Anderson" + }, + { + "y" : 3, + "name" : "Mohammad S Anwar", + "drilldown" : "Mohammad S Anwar" + }, + { + "y" : 2, + "name" : "Niels van Dijke", + "drilldown" : "Niels van Dijke" + }, + { + "name" : "PJ Durai", + "y" : 2, + "drilldown" : "PJ Durai" + }, + { + "drilldown" : "Philip Hood", + "name" : "Philip Hood", + "y" : 2 + }, + { + "y" : 5, + "name" : "Roger Bell_West", + "drilldown" : "Roger Bell_West" + }, + { + "y" : 2, + "name" : "Simon Green", + "drilldown" : "Simon Green" + }, + { + "drilldown" : "Simon Proctor", + "name" : "Simon Proctor", + "y" : 2 + }, + { + "y" : 4, + "name" : "Stuart Little", + "drilldown" : "Stuart Little" + }, + { + "drilldown" : "Ulrich Rieke", + "y" : 3, + "name" : "Ulrich Rieke" + }, + { + "drilldown" : "W. Luis Mochan", + "name" : "W. Luis Mochan", + "y" : 3 + } + ] + } + ], + "tooltip" : { + "headerFormat" : "{series.name}
", + "followPointer" : 1, + "pointFormat" : "{point.name}: {point.y:f}
" + }, + "title" : { + "text" : "Perl Weekly Challenge - 109" + }, + "xAxis" : { + "type" : "category" + }, "drilldown" : { "series" : [ { - "id" : "Dave Jacoby", "data" : [ [ "Perl", @@ -13,6 +121,7 @@ 1 ] ], + "id" : "Dave Jacoby", "name" : "Dave Jacoby" }, { @@ -22,10 +131,11 @@ 2 ] ], - "name" : "E. Choroba", - "id" : "E. Choroba" + "id" : "E. Choroba", + "name" : "E. Choroba" }, { + "name" : "Flavio Poletti", "id" : "Flavio Poletti", "data" : [ [ @@ -36,32 +146,31 @@ "Blog", 2 ] - ], - "name" : "Flavio Poletti" + ] }, { "name" : "James Smith", + "id" : "James Smith", "data" : [ [ "Perl", 2 ] - ], - "id" : "James Smith" + ] }, { - "name" : "Jorg Sommrey", + "id" : "Jorg Sommrey", "data" : [ [ "Perl", 2 ] ], - "id" : "Jorg Sommrey" + "name" : "Jorg Sommrey" }, { - "id" : "Laurent Rosenfeld", "name" : "Laurent Rosenfeld", + "id" : "Laurent Rosenfeld", "data" : [ [ "Perl", @@ -78,7 +187,7 @@ ] }, { - "name" : "Luca Ferrari", + "id" : "Luca Ferrari", "data" : [ [ "Raku", @@ -89,7 +198,7 @@ 2 ] ], - "id" : "Luca Ferrari" + "name" : "Luca Ferrari" }, { "data" : [ @@ -98,11 +207,10 @@ 2 ] ], - "name" : "Mark Anderson", - "id" : "Mark Anderson" + "id" : "Mark Anderson", + "name" : "Mark Anderson" }, { - "id" : "Mohammad S Anwar", "data" : [ [ "Perl", @@ -113,17 +221,18 @@ 1 ] ], + "id" : "Mohammad S Anwar", "name" : "Mohammad S Anwar" }, { - "name" : "Niels van Dijke", "data" : [ [ "Perl", 2 ] ], - "id" : "Niels van Dijke" + "id" : "Niels van Dijke", + "name" : "Niels van Dijke" }, { "id" : "PJ Durai", @@ -164,14 +273,14 @@ "name" : "Roger Bell_West" }, { - "name" : "Simon Green", "data" : [ [ "Perl", 2 ] ], - "id" : "Simon Green" + "id" : "Simon Green", + "name" : "Simon Green" }, { "name" : "Simon Proctor", @@ -198,7 +307,20 @@ "name" : "Stuart Little" }, { - "id" : "W. Luis Mochan", + "name" : "Ulrich Rieke", + "id" : "Ulrich Rieke", + "data" : [ + [ + "Perl", + 1 + ], + [ + "Raku", + 2 + ] + ] + }, + { "data" : [ [ "Perl", @@ -209,12 +331,13 @@ 1 ] ], + "id" : "W. Luis Mochan", "name" : "W. Luis Mochan" } ] }, - "xAxis" : { - "type" : "category" + "subtitle" : { + "text" : "[Champions: 18] Last updated at 2021-04-22 15:30:41 GMT" }, "yAxis" : { "title" : { @@ -230,114 +353,10 @@ } } }, - "legend" : { - "enabled" : 0 - }, - "tooltip" : { - "pointFormat" : "{point.name}: {point.y:f}
", - "headerFormat" : "{series.name}
", - "followPointer" : 1 - }, - "series" : [ - { - "name" : "Perl Weekly Challenge - 109", - "data" : [ - { - "name" : "Dave Jacoby", - "drilldown" : "Dave Jacoby", - "y" : 3 - }, - { - "y" : 2, - "drilldown" : "E. Choroba", - "name" : "E. Choroba" - }, - { - "name" : "Flavio Poletti", - "drilldown" : "Flavio Poletti", - "y" : 4 - }, - { - "drilldown" : "James Smith", - "y" : 2, - "name" : "James Smith" - }, - { - "drilldown" : "Jorg Sommrey", - "y" : 2, - "name" : "Jorg Sommrey" - }, - { - "y" : 5, - "drilldown" : "Laurent Rosenfeld", - "name" : "Laurent Rosenfeld" - }, - { - "name" : "Luca Ferrari", - "y" : 4, - "drilldown" : "Luca Ferrari" - }, - { - "y" : 2, - "drilldown" : "Mark Anderson", - "name" : "Mark Anderson" - }, - { - "name" : "Mohammad S Anwar", - "y" : 3, - "drilldown" : "Mohammad S Anwar" - }, - { - "name" : "Niels van Dijke", - "drilldown" : "Niels van Dijke", - "y" : 2 - }, - { - "name" : "PJ Durai", - "y" : 2, - "drilldown" : "PJ Durai" - }, - { - "name" : "Philip Hood", - "drilldown" : "Philip Hood", - "y" : 2 - }, - { - "y" : 5, - "drilldown" : "Roger Bell_West", - "name" : "Roger Bell_West" - }, - { - "drilldown" : "Simon Green", - "y" : 2, - "name" : "Simon Green" - }, - { - "name" : "Simon Proctor", - "drilldown" : "Simon Proctor", - "y" : 2 - }, - { - "drilldown" : "Stuart Little", - "y" : 4, - "name" : "Stuart Little" - }, - { - "name" : "W. Luis Mochan", - "drilldown" : "W. Luis Mochan", - "y" : 3 - } - ], - "colorByPoint" : 1 - } - ], - "title" : { - "text" : "Perl Weekly Challenge - 109" - }, "chart" : { "type" : "column" }, - "subtitle" : { - "text" : "[Champions: 17] Last updated at 2021-04-22 15:19:28 GMT" + "legend" : { + "enabled" : 0 } } diff --git a/stats/pwc-language-breakdown-summary.json b/stats/pwc-language-breakdown-summary.json index b29c3e00d0..e644d9f52e 100644 --- a/stats/pwc-language-breakdown-summary.json +++ b/stats/pwc-language-breakdown-summary.json @@ -1,33 +1,30 @@ { + "chart" : { + "type" : "column" + }, + "legend" : { + "enabled" : "false" + }, "xAxis" : { + "type" : "category", "labels" : { "style" : { - "fontSize" : "13px", - "fontFamily" : "Verdana, sans-serif" + "fontFamily" : "Verdana, sans-serif", + "fontSize" : "13px" } - }, - "type" : "category" + } + }, + "subtitle" : { + "text" : "Last updated at 2021-04-22 15:30:41 GMT" }, "yAxis" : { + "min" : 0, "title" : { "text" : null - }, - "min" : 0 + } }, "series" : [ { - "dataLabels" : { - "color" : "#FFFFFF", - "format" : "{point.y:.0f}", - "enabled" : "true", - "style" : { - "fontFamily" : "Verdana, sans-serif", - "fontSize" : "13px" - }, - "y" : 10, - "rotation" : -90, - "align" : "right" - }, "data" : [ [ "Blog", @@ -35,29 +32,32 @@ ], [ "Perl", - 5136 + 5137 ], [ "Raku", - 3261 + 3263 ] ], - "name" : "Contributions" + "name" : "Contributions", + "dataLabels" : { + "y" : 10, + "color" : "#FFFFFF", + "enabled" : "true", + "align" : "right", + "style" : { + "fontSize" : "13px", + "fontFamily" : "Verdana, sans-serif" + }, + "rotation" : -90, + "format" : "{point.y:.0f}" + } } ], - "chart" : { - "type" : "column" - }, - "title" : { - "text" : "Perl Weekly Challenge Contributions [2019 - 2020]" - }, "tooltip" : { "pointFormat" : "{point.y:.0f}" }, - "legend" : { - "enabled" : "false" - }, - "subtitle" : { - "text" : "Last updated at 2021-04-22 15:19:28 GMT" + "title" : { + "text" : "Perl Weekly Challenge Contributions [2019 - 2020]" } } diff --git a/stats/pwc-language-breakdown.json b/stats/pwc-language-breakdown.json index fa3beac642..a8b777174d 100644 --- a/stats/pwc-language-breakdown.json +++ b/stats/pwc-language-breakdown.json @@ -1,610 +1,29 @@ { - "subtitle" : { - "text" : "Click the columns to drilldown the language breakdown. Last updated at 2021-04-22 15:19:28 GMT" + "xAxis" : { + "type" : "category" }, - "plotOptions" : { - "series" : { - "dataLabels" : { - "format" : "{point.y}", - "enabled" : 1 - }, - "borderWidth" : 0 - } - }, - "tooltip" : { - "pointFormat" : "Challenge {point.name}: {point.y:f}
", - "followPointer" : "true", - "headerFormat" : "" - }, - "legend" : { - "enabled" : "false" - }, - "series" : [ - { - "colorByPoint" : "true", - "data" : [ - { - "drilldown" : "001", - "y" : 161, - "name" : "#001" - }, - { - "y" : 125, - "drilldown" : "002", - "name" : "#002" - }, - { - "drilldown" : "003", - "y" : 81, - "name" : "#003" - }, - { - "y" : 99, - "drilldown" : "004", - "name" : "#004" - }, - { - "name" : "#005", - "y" : 78, - "drilldown" : "005" - }, - { - "name" : "#006", - "y" : 58, - "drilldown" : "006" - }, - { - "drilldown" : "007", - "y" : 64, - "name" : "#007" - }, - { - "drilldown" : "008", - "y" : 78, - "name" : "#008" - }, - { - "drilldown" : "009", - "y" : 76, - "name" : "#009" - }, - { - "name" : "#010", - "drilldown" : "010", - "y" : 65 - }, - { - "name" : "#011", - "y" : 85, - "drilldown" : "011" - }, - { - "name" : "#012", - "drilldown" : "012", - "y" : 89 - }, - { - "drilldown" : "013", - "y" : 82, - "name" : "#013" - }, - { - "drilldown" : "014", - "y" : 100, - "name" : "#014" - }, - { - "drilldown" : "015", - "y" : 97, - "name" : "#015" - }, - { - "drilldown" : "016", - "y" : 70, - "name" : "#016" - }, - { - "name" : "#017", - "y" : 83, - "drilldown" : "017" - }, - { - "y" : 80, - "drilldown" : "018", - "name" : "#018" - }, - { - "name" : "#019", - "drilldown" : "019", - "y" : 101 - }, - { - "name" : "#020", - "drilldown" : "020", - "y" : 99 - }, - { - "name" : "#021", - "y" : 71, - "drilldown" : "021" - }, - { - "drilldown" : "022", - "y" : 67, - "name" : "#022" - }, - { - "y" : 95, - "drilldown" : "023", - "name" : "#023" - }, - { - "name" : "#024", - "y" : 74, - "drilldown" : "024" - }, - { - "name" : "#025", - "y" : 59, - "drilldown" : "025" - }, - { - "name" : "#026", - "y" : 74, - "drilldown" : "026" - }, - { - "y" : 60, - "drilldown" : "027", - "name" : "#027" - }, - { - "name" : "#028", - "y" : 80, - "drilldown" : "028" - }, - { - "name" : "#029", - "y" : 79, - "drilldown" : "029" - }, - { - "y" : 117, - "drilldown" : "030", - "name" : "#030" - }, - { - "name" : "#031", - "drilldown" : "031", - "y" : 89 - }, - { - "drilldown" : "032", - "y" : 94, - "name" : "#032" - }, - { - "name" : "#033", - "drilldown" : "033", - "y" : 110 - }, - { - "drilldown" : "034", - "y" : 64, - "name" : "#034" - }, - { - "drilldown" : "035", - "y" : 64, - "name" : "#035" - }, - { - "name" : "#036", - "drilldown" : "036", - "y" : 68 - }, - { - "name" : "#037", - "y" : 67, - "drilldown" : "037" - }, - { - "name" : "#038", - "drilldown" : "038", - "y" : 67 - }, - { - "name" : "#039", - "y" : 62, - "drilldown" : "039" - }, - { - "name" : "#040", - "drilldown" : "040", - "y" : 73 - }, - { - "name" : "#041", - "y" : 76, - "drilldown" : "041" - }, - { - "name" : "#042", - "y" : 92, - "drilldown" : "042" - }, - { - "drilldown" : "043", - "y" : 68, - "name" : "#043" - }, - { - "y" : 85, - "drilldown" : "044", - "name" : "#044" - }, - { - "drilldown" : "045", - "y" : 96, - "name" : "#045" - }, - { - "drilldown" : "046", - "y" : 87, - "name" : "#046" - }, - { - "name" : "#047", - "drilldown" : "047", - "y" : 84 - }, - { - "drilldown" : "048", - "y" : 108, - "name" : "#048" - }, - { - "name" : "#049", - "drilldown" : "049", - "y" : 89 - }, - { - "drilldown" : "050", - "y" : 98, - "name" : "#050" - }, - { - "drilldown" : "051", - "y" : 89, - "name" : "#051" - }, - { - "name" : "#052", - "y" : 91, - "drilldown" : "052" - }, - { - "name" : "#053", - "y" : 101, - "drilldown" : "053" - }, - { - "y" : 103, - "drilldown" : "054", - "name" : "#054" - }, - { - "drilldown" : "055", - "y" : 88, - "name" : "#055" - }, - { - "name" : "#056", - "y" : 95, - "drilldown" : "056" - }, - { - "name" : "#057", - "drilldown" : "057", - "y" : 80 - }, - { - "drilldown" : "058", - "y" : 69, - "name" : "#058" - }, - { - "drilldown" : "059", - "y" : 89, - "name" : "#059" - }, - { - "y" : 85, - "drilldown" : "060", - "name" : "#060" - }, - { - "name" : "#061", - "drilldown" : "061", - "y" : 81 - }, - { - "name" : "#062", - "y" : 56, - "drilldown" : "062" - }, - { - "y" : 89, - "drilldown" : "063", - "name" : "#063" - }, - { - "y" : 80, - "drilldown" : "064", - "name" : "#064" - }, - { - "y" : 73, - "drilldown" : "065", - "name" : "#065" - }, - { - "name" : "#066", - "drilldown" : "066", - "y" : 84 - }, - { - "name" : "#067", - "drilldown" : "067", - "y" : 90 - }, - { - "name" : "#068", - "drilldown" : "068", - "y" : 75 - }, - { - "drilldown" : "069", - "y" : 83, - "name" : "#069" - }, - { - "drilldown" : "070", - "y" : 93, - "name" : "#070" - }, - { - "drilldown" : "071", - "y" : 78, - "name" : "#071" - }, - { - "drilldown" : "072", - "y" : 112, - "name" : "#072" - }, - { - "name" : "#073", - "drilldown" : "073", - "y" : 110 - }, - { - "name" : "#074", - "drilldown" : "074", - "y" : 115 - }, - { - "name" : "#075", - "drilldown" : "075", - "y" : 113 - }, - { - "y" : 99, - "drilldown" : "076", - "name" : "#076" - }, - { - "name" : "#077", - "drilldown" : "077", - "y" : 98 - }, - { - "y" : 127, - "drilldown" : "078", - "name" : "#078" - }, - { - "name" : "#079", - "drilldown" : "079", - "y" : 122 - }, - { - "y" : 127, - "drilldown" : "080", - "name" : "#080" - }, - { - "name" : "#081", - "drilldown" : "081", - "y" : 114 - }, - { - "name" : "#082", - "y" : 114, - "drilldown" : "082" - }, - { - "name" : "#083", - "drilldown" : "083", - "y" : 127 - }, - { - "drilldown" : "084", - "y" : 119, - "name" : "#084" - }, - { - "name" : "#085", - "drilldown" : "085", - "y" : 114 - }, - { - "y" : 104, - "drilldown" : "086", - "name" : "#086" - }, - { - "y" : 101, - "drilldown" : "087", - "name" : "#087" - }, - { - "name" : "#088", - "y" : 121, - "drilldown" : "088" - }, - { - "name" : "#089", - "drilldown" : "089", - "y" : 113 - }, - { - "name" : "#090", - "y" : 113, - "drilldown" : "090" - }, - { - "y" : 108, - "drilldown" : "091", - "name" : "#091" - }, - { - "drilldown" : "092", - "y" : 98, - "name" : "#092" - }, - { - "name" : "#093", - "y" : 87, - "drilldown" : "093" - }, - { - "name" : "#094", - "drilldown" : "094", - "y" : 87 - }, - { - "name" : "#095", - "y" : 108, - "drilldown" : "095" - }, - { - "drilldown" : "096", - "y" : 108, - "name" : "#096" - }, - { - "name" : "#097", - "y" : 111, - "drilldown" : "097" - }, - { - "name" : "#098", - "drilldown" : "098", - "y" : 108 - }, - { - "drilldown" : "099", - "y" : 97, - "name" : "#099" - }, - { - "name" : "#100", - "y" : 120, - "drilldown" : "100" - }, - { - "y" : 83, - "drilldown" : "101", - "name" : "#101" - }, - { - "name" : "#102", - "drilldown" : "102", - "y" : 90 - }, - { - "name" : "#103", - "drilldown" : "103", - "y" : 79 - }, - { - "drilldown" : "104", - "y" : 82, - "name" : "#104" - }, - { - "name" : "#105", - "y" : 73, - "drilldown" : "105" - }, - { - "y" : 97, - "drilldown" : "106", - "name" : "#106" - }, - { - "drilldown" : "107", - "y" : 88, - "name" : "#107" - }, - { - "y" : 92, - "drilldown" : "108", - "name" : "#108" - }, - { - "name" : "#109", - "y" : 49, - "drilldown" : "109" - } - ], - "name" : "Perl Weekly Challenge Languages" - } - ], - "chart" : { - "type" : "column" - }, - "title" : { - "text" : "Perl Weekly Challenge Language" - }, - "yAxis" : { - "title" : { - "text" : "Total Solutions" - } - }, - "drilldown" : { - "series" : [ - { - "data" : [ - [ - "Perl", - 103 - ], - [ - "Raku", - 47 - ], - [ - "Blog", - 11 - ] - ], - "name" : "001", - "id" : "001" + "drilldown" : { + "series" : [ + { + "data" : [ + [ + "Perl", + 103 + ], + [ + "Raku", + 47 + ], + [ + "Blog", + 11 + ] + ], + "id" : "001", + "name" : "001" }, { - "name" : "002", + "id" : "002", "data" : [ [ "Perl", @@ -619,10 +38,9 @@ 10 ] ], - "id" : "002" + "name" : "002" }, { - "name" : "003", "data" : [ [ "Perl", @@ -637,7 +55,8 @@ 9 ] ], - "id" : "003" + "id" : "003", + "name" : "003" }, { "name" : "004", @@ -658,7 +77,7 @@ "id" : "004" }, { - "name" : "005", + "id" : "005", "data" : [ [ "Perl", @@ -673,10 +92,10 @@ 12 ] ], - "id" : "005" + "name" : "005" }, { - "name" : "006", + "id" : "006", "data" : [ [ "Perl", @@ -691,10 +110,9 @@ 7 ] ], - "id" : "006" + "name" : "006" }, { - "id" : "007", "data" : [ [ "Perl", @@ -709,6 +127,7 @@ 10 ] ], + "id" : "007", "name" : "007" }, { @@ -730,6 +149,7 @@ "id" : "008" }, { + "id" : "009", "data" : [ [ "Perl", @@ -744,12 +164,9 @@ 13 ] ], - "name" : "009", - "id" : "009" + "name" : "009" }, { - "id" : "010", - "name" : "010", "data" : [ [ "Perl", @@ -763,10 +180,12 @@ "Blog", 11 ] - ] + ], + "id" : "010", + "name" : "010" }, { - "name" : "011", + "id" : "011", "data" : [ [ "Perl", @@ -781,7 +200,7 @@ 10 ] ], - "id" : "011" + "name" : "011" }, { "data" : [ @@ -798,10 +217,11 @@ 11 ] ], - "name" : "012", - "id" : "012" + "id" : "012", + "name" : "012" }, { + "name" : "013", "data" : [ [ "Perl", @@ -816,11 +236,9 @@ 13 ] ], - "name" : "013", "id" : "013" }, { - "id" : "014", "data" : [ [ "Perl", @@ -835,10 +253,11 @@ 15 ] ], + "id" : "014", "name" : "014" }, { - "name" : "015", + "id" : "015", "data" : [ [ "Perl", @@ -853,9 +272,10 @@ 15 ] ], - "id" : "015" + "name" : "015" }, { + "id" : "016", "data" : [ [ "Perl", @@ -870,12 +290,9 @@ 12 ] ], - "name" : "016", - "id" : "016" + "name" : "016" }, { - "id" : "017", - "name" : "017", "data" : [ [ "Perl", @@ -889,7 +306,9 @@ "Blog", 12 ] - ] + ], + "id" : "017", + "name" : "017" }, { "id" : "018", @@ -910,6 +329,7 @@ "name" : "018" }, { + "name" : "019", "id" : "019", "data" : [ [ @@ -924,10 +344,10 @@ "Blog", 13 ] - ], - "name" : "019" + ] }, { + "name" : "020", "id" : "020", "data" : [ [ @@ -942,8 +362,7 @@ "Blog", 13 ] - ], - "name" : "020" + ] }, { "id" : "021", @@ -965,6 +384,7 @@ }, { "name" : "022", + "id" : "022", "data" : [ [ "Perl", @@ -978,12 +398,10 @@ "Blog", 10 ] - ], - "id" : "022" + ] }, { "id" : "023", - "name" : "023", "data" : [ [ "Perl", @@ -997,10 +415,10 @@ "Blog", 12 ] - ] + ], + "name" : "023" }, { - "id" : "024", "name" : "024", "data" : [ [ @@ -1015,11 +433,12 @@ "Blog", 11 ] - ] + ], + "id" : "024" }, { - "id" : "025", "name" : "025", + "id" : "025", "data" : [ [ "Perl", @@ -1037,7 +456,6 @@ }, { "id" : "026", - "name" : "026", "data" : [ [ "Perl", @@ -1051,9 +469,11 @@ "Blog", 10 ] - ] + ], + "name" : "026" }, { + "name" : "027", "id" : "027", "data" : [ [ @@ -1068,8 +488,7 @@ "Blog", 9 ] - ], - "name" : "027" + ] }, { "data" : [ @@ -1086,10 +505,11 @@ 9 ] ], - "name" : "028", - "id" : "028" + "id" : "028", + "name" : "028" }, { + "id" : "029", "data" : [ [ "Perl", @@ -1104,12 +524,10 @@ 12 ] ], - "name" : "029", - "id" : "029" + "name" : "029" }, { "id" : "030", - "name" : "030", "data" : [ [ "Perl", @@ -1123,7 +541,8 @@ "Blog", 10 ] - ] + ], + "name" : "030" }, { "name" : "031", @@ -1145,7 +564,6 @@ }, { "id" : "032", - "name" : "032", "data" : [ [ "Perl", @@ -1159,9 +577,11 @@ "Blog", 10 ] - ] + ], + "name" : "032" }, { + "id" : "033", "data" : [ [ "Perl", @@ -1176,10 +596,11 @@ 10 ] ], - "name" : "033", - "id" : "033" + "name" : "033" }, { + "name" : "034", + "id" : "034", "data" : [ [ "Perl", @@ -1193,9 +614,7 @@ "Blog", 11 ] - ], - "name" : "034", - "id" : "034" + ] }, { "data" : [ @@ -1212,10 +631,11 @@ 9 ] ], - "name" : "035", - "id" : "035" + "id" : "035", + "name" : "035" }, { + "name" : "036", "id" : "036", "data" : [ [ @@ -1230,12 +650,9 @@ "Blog", 11 ] - ], - "name" : "036" + ] }, { - "id" : "037", - "name" : "037", "data" : [ [ "Perl", @@ -1249,9 +666,13 @@ "Blog", 9 ] - ] + ], + "id" : "037", + "name" : "037" }, { + "name" : "038", + "id" : "038", "data" : [ [ "Perl", @@ -1265,9 +686,7 @@ "Blog", 12 ] - ], - "name" : "038", - "id" : "038" + ] }, { "name" : "039", @@ -1288,7 +707,6 @@ "id" : "039" }, { - "id" : "040", "data" : [ [ "Perl", @@ -1303,9 +721,12 @@ 10 ] ], + "id" : "040", "name" : "040" }, { + "name" : "041", + "id" : "041", "data" : [ [ "Perl", @@ -1319,12 +740,11 @@ "Blog", 9 ] - ], - "name" : "041", - "id" : "041" + ] }, { "name" : "042", + "id" : "042", "data" : [ [ "Perl", @@ -1338,10 +758,10 @@ "Blog", 11 ] - ], - "id" : "042" + ] }, { + "name" : "043", "id" : "043", "data" : [ [ @@ -1356,10 +776,10 @@ "Blog", 11 ] - ], - "name" : "043" + ] }, { + "name" : "044", "id" : "044", "data" : [ [ @@ -1374,11 +794,9 @@ "Blog", 11 ] - ], - "name" : "044" + ] }, { - "id" : "045", "name" : "045", "data" : [ [ @@ -1393,10 +811,10 @@ "Blog", 11 ] - ] + ], + "id" : "045" }, { - "name" : "046", "data" : [ [ "Perl", @@ -1411,11 +829,12 @@ 10 ] ], - "id" : "046" + "id" : "046", + "name" : "046" }, { - "id" : "047", "name" : "047", + "id" : "047", "data" : [ [ "Perl", @@ -1450,8 +869,8 @@ "id" : "048" }, { - "id" : "049", "name" : "049", + "id" : "049", "data" : [ [ "Perl", @@ -1486,6 +905,7 @@ "name" : "050" }, { + "id" : "051", "data" : [ [ "Perl", @@ -1500,8 +920,7 @@ 11 ] ], - "name" : "051", - "id" : "051" + "name" : "051" }, { "data" : [ @@ -1518,11 +937,12 @@ 14 ] ], - "name" : "052", - "id" : "052" + "id" : "052", + "name" : "052" }, { "name" : "053", + "id" : "053", "data" : [ [ "Perl", @@ -1536,12 +956,9 @@ "Blog", 15 ] - ], - "id" : "053" + ] }, { - "id" : "054", - "name" : "054", "data" : [ [ "Perl", @@ -1555,7 +972,9 @@ "Blog", 18 ] - ] + ], + "id" : "054", + "name" : "054" }, { "id" : "055", @@ -1576,6 +995,7 @@ "name" : "055" }, { + "id" : "056", "data" : [ [ "Perl", @@ -1590,11 +1010,11 @@ 16 ] ], - "name" : "056", - "id" : "056" + "name" : "056" }, { "name" : "057", + "id" : "057", "data" : [ [ "Perl", @@ -1608,8 +1028,7 @@ "Blog", 15 ] - ], - "id" : "057" + ] }, { "data" : [ @@ -1626,11 +1045,10 @@ 13 ] ], - "name" : "058", - "id" : "058" + "id" : "058", + "name" : "058" }, { - "id" : "059", "data" : [ [ "Perl", @@ -1645,9 +1063,12 @@ 16 ] ], + "id" : "059", "name" : "059" }, { + "name" : "060", + "id" : "060", "data" : [ [ "Perl", @@ -1661,11 +1082,10 @@ "Blog", 16 ] - ], - "name" : "060", - "id" : "060" + ] }, { + "name" : "061", "id" : "061", "data" : [ [ @@ -1680,10 +1100,11 @@ "Blog", 14 ] - ], - "name" : "061" + ] }, { + "name" : "062", + "id" : "062", "data" : [ [ "Perl", @@ -1697,13 +1118,10 @@ "Blog", 11 ] - ], - "name" : "062", - "id" : "062" + ] }, { "id" : "063", - "name" : "063", "data" : [ [ "Perl", @@ -1717,9 +1135,11 @@ "Blog", 13 ] - ] + ], + "name" : "063" }, { + "name" : "064", "id" : "064", "data" : [ [ @@ -1734,11 +1154,10 @@ "Blog", 16 ] - ], - "name" : "064" + ] }, { - "id" : "065", + "name" : "065", "data" : [ [ "Perl", @@ -1753,10 +1172,10 @@ 15 ] ], - "name" : "065" + "id" : "065" }, { - "name" : "066", + "id" : "066", "data" : [ [ "Perl", @@ -1771,10 +1190,9 @@ 14 ] ], - "id" : "066" + "name" : "066" }, { - "name" : "067", "data" : [ [ "Perl", @@ -1789,10 +1207,10 @@ 18 ] ], - "id" : "067" + "id" : "067", + "name" : "067" }, { - "id" : "068", "name" : "068", "data" : [ [ @@ -1807,11 +1225,11 @@ "Blog", 13 ] - ] + ], + "id" : "068" }, { "id" : "069", - "name" : "069", "data" : [ [ "Perl", @@ -1825,10 +1243,12 @@ "Blog", 16 ] - ] + ], + "name" : "069" }, { "name" : "070", + "id" : "070", "data" : [ [ "Perl", @@ -1842,11 +1262,9 @@ "Blog", 17 ] - ], - "id" : "070" + ] }, { - "id" : "071", "data" : [ [ "Perl", @@ -1861,10 +1279,10 @@ 15 ] ], + "id" : "071", "name" : "071" }, { - "name" : "072", "data" : [ [ "Perl", @@ -1879,7 +1297,8 @@ 19 ] ], - "id" : "072" + "id" : "072", + "name" : "072" }, { "id" : "073", @@ -1918,8 +1337,8 @@ "id" : "074" }, { - "id" : "075", "name" : "075", + "id" : "075", "data" : [ [ "Perl", @@ -1936,6 +1355,7 @@ ] }, { + "name" : "076", "data" : [ [ "Perl", @@ -1950,10 +1370,10 @@ 16 ] ], - "name" : "076", "id" : "076" }, { + "name" : "077", "data" : [ [ "Perl", @@ -1968,11 +1388,9 @@ 14 ] ], - "name" : "077", "id" : "077" }, { - "id" : "078", "data" : [ [ "Perl", @@ -1987,10 +1405,11 @@ 18 ] ], + "id" : "078", "name" : "078" }, { - "name" : "079", + "id" : "079", "data" : [ [ "Perl", @@ -2005,9 +1424,10 @@ 17 ] ], - "id" : "079" + "name" : "079" }, { + "name" : "080", "id" : "080", "data" : [ [ @@ -2022,11 +1442,9 @@ "Blog", 16 ] - ], - "name" : "080" + ] }, { - "name" : "081", "data" : [ [ "Perl", @@ -2041,9 +1459,11 @@ 15 ] ], - "id" : "081" + "id" : "081", + "name" : "081" }, { + "name" : "082", "id" : "082", "data" : [ [ @@ -2058,10 +1478,11 @@ "Blog", 17 ] - ], - "name" : "082" + ] }, { + "name" : "083", + "id" : "083", "data" : [ [ "Perl", @@ -2075,11 +1496,10 @@ "Blog", 16 ] - ], - "name" : "083", - "id" : "083" + ] }, { + "id" : "084", "data" : [ [ "Perl", @@ -2094,10 +1514,10 @@ 12 ] ], - "name" : "084", - "id" : "084" + "name" : "084" }, { + "id" : "085", "data" : [ [ "Perl", @@ -2112,12 +1532,11 @@ 18 ] ], - "name" : "085", - "id" : "085" + "name" : "085" }, { - "id" : "086", "name" : "086", + "id" : "086", "data" : [ [ "Perl", @@ -2134,7 +1553,7 @@ ] }, { - "name" : "087", + "id" : "087", "data" : [ [ "Perl", @@ -2149,7 +1568,7 @@ 14 ] ], - "id" : "087" + "name" : "087" }, { "name" : "088", @@ -2170,8 +1589,8 @@ "id" : "088" }, { - "id" : "089", "name" : "089", + "id" : "089", "data" : [ [ "Perl", @@ -2188,7 +1607,7 @@ ] }, { - "name" : "090", + "id" : "090", "data" : [ [ "Perl", @@ -2203,9 +1622,10 @@ 17 ] ], - "id" : "090" + "name" : "090" }, { + "id" : "091", "data" : [ [ "Perl", @@ -2220,11 +1640,10 @@ 16 ] ], - "name" : "091", - "id" : "091" + "name" : "091" }, { - "id" : "092", + "name" : "092", "data" : [ [ "Perl", @@ -2239,9 +1658,10 @@ 16 ] ], - "name" : "092" + "id" : "092" }, { + "id" : "093", "data" : [ [ "Perl", @@ -2256,12 +1676,11 @@ 16 ] ], - "name" : "093", - "id" : "093" + "name" : "093" }, { - "id" : "094", "name" : "094", + "id" : "094", "data" : [ [ "Perl", @@ -2297,6 +1716,7 @@ }, { "name" : "096", + "id" : "096", "data" : [ [ "Perl", @@ -2310,10 +1730,11 @@ "Blog", 19 ] - ], - "id" : "096" + ] }, { + "name" : "097", + "id" : "097", "data" : [ [ "Perl", @@ -2327,11 +1748,10 @@ "Blog", 19 ] - ], - "name" : "097", - "id" : "097" + ] }, { + "name" : "098", "id" : "098", "data" : [ [ @@ -2346,11 +1766,9 @@ "Blog", 17 ] - ], - "name" : "098" + ] }, { - "id" : "099", "data" : [ [ "Perl", @@ -2365,9 +1783,12 @@ 14 ] ], + "id" : "099", "name" : "099" }, { + "name" : "100", + "id" : "100", "data" : [ [ "Perl", @@ -2381,12 +1802,9 @@ "Blog", 21 ] - ], - "name" : "100", - "id" : "100" + ] }, { - "id" : "101", "name" : "101", "data" : [ [ @@ -2401,9 +1819,11 @@ "Blog", 13 ] - ] + ], + "id" : "101" }, { + "name" : "102", "id" : "102", "data" : [ [ @@ -2418,8 +1838,7 @@ "Blog", 15 ] - ], - "name" : "102" + ] }, { "name" : "103", @@ -2440,6 +1859,7 @@ "id" : "103" }, { + "name" : "104", "data" : [ [ "Perl", @@ -2454,7 +1874,6 @@ 14 ] ], - "name" : "104", "id" : "104" }, { @@ -2476,7 +1895,7 @@ "name" : "105" }, { - "name" : "106", + "id" : "106", "data" : [ [ "Perl", @@ -2491,7 +1910,7 @@ 17 ] ], - "id" : "106" + "name" : "106" }, { "id" : "107", @@ -2530,26 +1949,607 @@ "name" : "108" }, { - "name" : "109", "data" : [ [ "Perl", - 24 + 25 ], [ "Raku", - 16 + 18 ], [ "Blog", 9 ] ], - "id" : "109" + "id" : "109", + "name" : "109" } ] }, - "xAxis" : { - "type" : "category" + "subtitle" : { + "text" : "Click the columns to drilldown the language breakdown. Last updated at 2021-04-22 15:30:41 GMT" + }, + "yAxis" : { + "title" : { + "text" : "Total Solutions" + } + }, + "plotOptions" : { + "series" : { + "borderWidth" : 0, + "dataLabels" : { + "enabled" :