From 551c6b2f957c2460f9aeb51b2f681a43d0817c35 Mon Sep 17 00:00:00 2001 From: Mohammad S Anwar Date: Tue, 19 Jan 2021 12:10:10 +0000 Subject: - Added solutions by Ulrich Rieke. --- challenge-096/ulrich-rieke/cpp/ch-1.cpp | 36 + challenge-096/ulrich-rieke/cpp/ch-2.cpp | 30 + challenge-096/ulrich-rieke/haskell/ch-1.hs | 10 + challenge-096/ulrich-rieke/haskell/ch-2.hs | 10 + challenge-096/ulrich-rieke/perl/ch-1.pl | 10 + challenge-096/ulrich-rieke/perl/ch-2.pl | 32 + challenge-096/ulrich-rieke/raku/ch-1.raku | 8 + challenge-096/ulrich-rieke/raku/ch-2.raku | 26 + stats/pwc-current.json | 179 ++-- stats/pwc-language-breakdown-summary.json | 68 +- stats/pwc-language-breakdown.json | 1402 ++++++++++++++-------------- stats/pwc-leaders.json | 732 +++++++-------- stats/pwc-summary-1-30.json | 42 +- stats/pwc-summary-121-150.json | 116 +-- stats/pwc-summary-151-180.json | 102 +- stats/pwc-summary-181-210.json | 48 +- stats/pwc-summary-211-240.json | 50 +- stats/pwc-summary-31-60.json | 48 +- stats/pwc-summary-61-90.json | 98 +- stats/pwc-summary-91-120.json | 86 +- stats/pwc-summary.json | 46 +- 21 files changed, 1680 insertions(+), 1499 deletions(-) create mode 100644 challenge-096/ulrich-rieke/cpp/ch-1.cpp create mode 100644 challenge-096/ulrich-rieke/cpp/ch-2.cpp create mode 100644 challenge-096/ulrich-rieke/haskell/ch-1.hs create mode 100644 challenge-096/ulrich-rieke/haskell/ch-2.hs create mode 100644 challenge-096/ulrich-rieke/perl/ch-1.pl create mode 100644 challenge-096/ulrich-rieke/perl/ch-2.pl create mode 100644 challenge-096/ulrich-rieke/raku/ch-1.raku create mode 100644 challenge-096/ulrich-rieke/raku/ch-2.raku diff --git a/challenge-096/ulrich-rieke/cpp/ch-1.cpp b/challenge-096/ulrich-rieke/cpp/ch-1.cpp new file mode 100644 index 0000000000..ff0bcd525c --- /dev/null +++ b/challenge-096/ulrich-rieke/cpp/ch-1.cpp @@ -0,0 +1,36 @@ +#include +#include +#include +#include + +int main( int argc, char * argv[] ) { + std::string line( argv[1] ) ; + std::vector words ; + std::string word ; + for (std::string::const_iterator sci = line.begin( ) ; sci != line.end( ) ; + sci++ ) { + if ( *sci == ' ' ) { + if ( word.length( ) != 0 ) { + words.push_back( word ) ; + word.clear( ) ; + } + } + else { // no white space + word.push_back( *sci ) ; + } + } + if ( word.length( ) != 0 ) //the last word might not be followed by white space + words.push_back( word ) ; + std::reverse( words.begin( ) , words.end( ) ) ; + int wordnumber = words.size( ) ; + int counter = 0 ; + std::string output ; + for ( auto theWord : words ) { + output.append( theWord ) ; + if ( counter < wordnumber - 1 ) + output.append( " " ) ; + counter++ ; + } + std::cout << output << std::endl ; + return 0 ; +} diff --git a/challenge-096/ulrich-rieke/cpp/ch-2.cpp b/challenge-096/ulrich-rieke/cpp/ch-2.cpp new file mode 100644 index 0000000000..2f0b778da0 --- /dev/null +++ b/challenge-096/ulrich-rieke/cpp/ch-2.cpp @@ -0,0 +1,30 @@ +#include +#include +#include +#include + +int levenshtein_dist( const std::string & a , const std::string & b ) { + if ( a.length( ) == 0 ) + return b.length( ) ; + if ( b.length( ) == 0 ) + return a.length( ) ; + std::string tailA ( a.substr( 1 ) ) ; + std::string tailB ( b.substr( 1 ) ) ; + if ( a[0] == b[0] ) + return levenshtein_dist( tailA , tailB ) ; + else { + std::vector lengths ; + lengths.push_back( levenshtein_dist( tailA , b ) ) ; + lengths.push_back( levenshtein_dist( a , tailB ) ) ; + lengths.push_back( levenshtein_dist( tailA , tailB ) ) ; + return 1 + *std::min_element( lengths.begin( ) , lengths.end( ) ) ; + } +} + +int main( int argc , char * argv[ ] ) { + std::string A ( argv[ 1 ] ) ; + std::string B ( argv[ 2 ] ) ; + std::cout << "The edit distance of " << A << " and " << B << " is " ; + std::cout << levenshtein_dist( A , B ) << std::endl ; + return 0 ; +} diff --git a/challenge-096/ulrich-rieke/haskell/ch-1.hs b/challenge-096/ulrich-rieke/haskell/ch-1.hs new file mode 100644 index 0000000000..4f5a6471dd --- /dev/null +++ b/challenge-096/ulrich-rieke/haskell/ch-1.hs @@ -0,0 +1,10 @@ +module Challenge096 + where +import qualified Data.Text as T + +solution :: String -> String +solution str = unwords $ reverse $ words strippedString +where + strippedString :: String + strippedString = T.unpack $ T.dropWhileEnd( == ' ' ) $ T.pack + $ dropWhile ( == ' ' ) str diff --git a/challenge-096/ulrich-rieke/haskell/ch-2.hs b/challenge-096/ulrich-rieke/haskell/ch-2.hs new file mode 100644 index 0000000000..ec782e5000 --- /dev/null +++ b/challenge-096/ulrich-rieke/haskell/ch-2.hs @@ -0,0 +1,10 @@ +module Challenge096_2 + where + +levenshtein_distance :: String -> String -> Int +levenshtein_distance a b + |null a = length b + |null b = length a + |head a == head b = levenshtein_distance ( tail a ) ( tail b ) + |otherwise = 1 + minimum [levenshtein_distance a ( tail b ) , + levenshtein_distance ( tail a ) b , levenshtein_distance ( tail a ) ( tail b )] diff --git a/challenge-096/ulrich-rieke/perl/ch-1.pl b/challenge-096/ulrich-rieke/perl/ch-1.pl new file mode 100644 index 0000000000..bb45cb5d26 --- /dev/null +++ b/challenge-096/ulrich-rieke/perl/ch-1.pl @@ -0,0 +1,10 @@ +#!/usr/bin/perl ; +use strict ; +use warnings ; +use feature 'say' ; + +my $S = $ARGV[ 0 ] ; +$S =~ s/^\s*?// ; +$S =~ s/s+$// ; +my @words = split( /\s+/ , $S ) ; +say join( ' ', reverse @words ) ; diff --git a/challenge-096/ulrich-rieke/perl/ch-2.pl b/challenge-096/ulrich-rieke/perl/ch-2.pl new file mode 100644 index 0000000000..0801032dbd --- /dev/null +++ b/challenge-096/ulrich-rieke/perl/ch-2.pl @@ -0,0 +1,32 @@ +#!/usr/bin/perl ; +use strict ; +use warnings ; +use List::Util qw( min ) ; +use feature 'say' ; + +sub levenshtein_dist { + my $A = shift ; + my $B = shift ; + if ( length $A == 0 ) { + return length $B ; + } + elsif ( length $B == 0 ) { + return length $A ; + } + elsif ( substr( $A , 0 , 1 ) eq substr( $B, 0 , 1 ) ) { + return levenshtein_dist( substr( $A , 1 ) , substr( $B, 1 ) ) ; + } + else { + my $tailA = substr( $A , 1 ) ; + my $tailB = substr( $B , 1 ) ; + my @results ; + push( @results , levenshtein_dist( $tailA, $B ) ) ; + push( @results, levenshtein_dist( $A , $tailB ) ) ; + push( @results, levenshtein_dist( $tailA , $tailB ) ) ; + return 1 + min @results ; + } +} + +my $A = $ARGV[ 0 ] ; +my $B = $ARGV[ 1 ] ; +say levenshtein_dist( $A , $B ) ; diff --git a/challenge-096/ulrich-rieke/raku/ch-1.raku b/challenge-096/ulrich-rieke/raku/ch-1.raku new file mode 100644 index 0000000000..d0151ac022 --- /dev/null +++ b/challenge-096/ulrich-rieke/raku/ch-1.raku @@ -0,0 +1,8 @@ +use v6 ; + +sub MAIN( Str $S is copy ) { + $S .= trim-leading ; + $S .= trim-trailing ; + my @words = $S.split( /\s+/ ) ; + say @words.reverse.join( ' ' ) ; +} diff --git a/challenge-096/ulrich-rieke/raku/ch-2.raku b/challenge-096/ulrich-rieke/raku/ch-2.raku new file mode 100644 index 0000000000..fe41d00284 --- /dev/null +++ b/challenge-096/ulrich-rieke/raku/ch-2.raku @@ -0,0 +1,26 @@ +use v6 ; + +sub levenshtein_dist( Str $A is copy , Str $B is copy --> Int) { + if ( $B.chars == 0 ) { + return $A.chars ; + } + elsif ( $A.chars == 0 ) { + return $B.chars ; + } + elsif ( $A.substr(0 , 1 ) eq $B.substr(0 , 1 ) ) { + return levenshtein_dist( $A.substr( 1 ) , $B.substr( 1 ) ) ; + } + else { + my @results ; + my $tailA = $A.substr( 1 ) ; + my $tailB = $B.substr( 1 ) ; + @results.push( levenshtein_dist( $tailA, $B ) , + levenshtein_dist( $A , $tailB ) , levenshtein_dist( $tailA , + $tailB ) ) ; + return 1 + @results.min ; + } +} + +sub MAIN( Str $A , Str $B ) { + say levenshtein_dist( $A , $B ) ; +} diff --git a/stats/pwc-current.json b/stats/pwc-current.json index 6a5bb87c47..41b1b6951c 100644 --- a/stats/pwc-current.json +++ b/stats/pwc-current.json @@ -1,4 +1,24 @@ { + "plotOptions" : { + "series" : { + "dataLabels" : { + "format" : "{point.y}", + "enabled" : 1 + }, + "borderWidth" : 0 + } + }, + "yAxis" : { + "title" : { + "text" : "Total Solutions" + } + }, + "chart" : { + "type" : "column" + }, + "title" : { + "text" : "Perl Weekly Challenge - 096" + }, "drilldown" : { "series" : [ { @@ -12,16 +32,18 @@ "id" : "Andrew Shitov" }, { - "id" : "Ben Davies", - "name" : "Ben Davies", "data" : [ [ "Raku", 2 ] - ] + ], + "name" : "Ben Davies", + "id" : "Ben Davies" }, { + "name" : "Dave Jacoby", + "id" : "Dave Jacoby", "data" : [ [ "Perl", @@ -31,23 +53,19 @@ "Blog", 1 ] - ], - "id" : "Dave Jacoby", - "name" : "Dave Jacoby" + ] }, { - "id" : "E. Choroba", - "name" : "E. Choroba", "data" : [ [ "Perl", 2 ] - ] + ], + "id" : "E. Choroba", + "name" : "E. Choroba" }, { - "name" : "Flavio Poletti", - "id" : "Flavio Poletti", "data" : [ [ "Perl", @@ -57,17 +75,19 @@ "Blog", 2 ] - ] + ], + "id" : "Flavio Poletti", + "name" : "Flavio Poletti" }, { + "name" : "James Smith", + "id" : "James Smith", "data" : [ [ "Perl", 2 ] - ], - "name" : "James Smith", - "id" : "James Smith" + ] }, { "data" : [ @@ -80,8 +100,8 @@ 2 ] ], - "id" : "Luca Ferrari", - "name" : "Luca Ferrari" + "name" : "Luca Ferrari", + "id" : "Luca Ferrari" }, { "data" : [ @@ -90,18 +110,18 @@ 2 ] ], - "id" : "Mark Anderson", - "name" : "Mark Anderson" + "name" : "Mark Anderson", + "id" : "Mark Anderson" }, { + "name" : "Philip Hood", + "id" : "Philip Hood", "data" : [ [ "Raku", 2 ] - ], - "id" : "Philip Hood", - "name" : "Philip Hood" + ] }, { "data" : [ @@ -118,9 +138,23 @@ "name" : "Roger Bell_West" }, { + "data" : [ + [ + "Raku", + 2 + ] + ], "id" : "Simon Proctor", - "name" : "Simon Proctor", + "name" : "Simon Proctor" + }, + { + "name" : "Stuart Little", + "id" : "Stuart Little", "data" : [ + [ + "Perl", + 2 + ], [ "Raku", 2 @@ -138,12 +172,10 @@ 2 ] ], - "name" : "Stuart Little", - "id" : "Stuart Little" + "name" : "Ulrich Rieke", + "id" : "Ulrich Rieke" }, { - "name" : "W. Luis Mochan", - "id" : "W. Luis Mochan", "data" : [ [ "Perl", @@ -153,22 +185,28 @@ "Blog", 1 ] - ] + ], + "id" : "W. Luis Mochan", + "name" : "W. Luis Mochan" } ] }, - "yAxis" : { - "title" : { - "text" : "Total Solutions" - } + "tooltip" : { + "pointFormat" : "{point.name}: {point.y:f}
", + "followPointer" : 1, + "headerFormat" : "{series.name}
" }, - "title" : { - "text" : "Perl Weekly Challenge - 096" + "legend" : { + "enabled" : 0 + }, + "subtitle" : { + "text" : "[Champions: 14] Last updated at 2021-01-19 12:09:23 GMT" + }, + "xAxis" : { + "type" : "category" }, "series" : [ { - "name" : "Perl Weekly Challenge - 096", - "colorByPoint" : 1, "data" : [ { "y" : 1, @@ -181,19 +219,19 @@ "y" : 2 }, { - "y" : 3, + "drilldown" : "Dave Jacoby", "name" : "Dave Jacoby", - "drilldown" : "Dave Jacoby" + "y" : 3 }, { - "drilldown" : "E. Choroba", "y" : 2, - "name" : "E. Choroba" + "name" : "E. Choroba", + "drilldown" : "E. Choroba" }, { "drilldown" : "Flavio Poletti", - "y" : 4, - "name" : "Flavio Poletti" + "name" : "Flavio Poletti", + "y" : 4 }, { "drilldown" : "James Smith", @@ -201,13 +239,13 @@ "y" : 2 }, { - "drilldown" : "Luca Ferrari", "y" : 4, - "name" : "Luca Ferrari" + "name" : "Luca Ferrari", + "drilldown" : "Luca Ferrari" }, { - "name" : "Mark Anderson", "y" : 2, + "name" : "Mark Anderson", "drilldown" : "Mark Anderson" }, { @@ -216,52 +254,33 @@ "drilldown" : "Philip Hood" }, { + "drilldown" : "Roger Bell_West", "y" : 4, - "name" : "Roger Bell_West", - "drilldown" : "Roger Bell_West" + "name" : "Roger Bell_West" }, { - "name" : "Simon Proctor", "y" : 2, + "name" : "Simon Proctor", "drilldown" : "Simon Proctor" }, { - "drilldown" : "Stuart Little", + "y" : 4, "name" : "Stuart Little", - "y" : 4 + "drilldown" : "Stuart Little" + }, + { + "name" : "Ulrich Rieke", + "y" : 4, + "drilldown" : "Ulrich Rieke" }, { "drilldown" : "W. Luis Mochan", - "name" : "W. Luis Mochan", - "y" : 3 + "y" : 3, + "name" : "W. Luis Mochan" } - ] - } - ], - "plotOptions" : { - "series" : { - "dataLabels" : { - "enabled" : 1, - "format" : "{point.y}" - }, - "borderWidth" : 0 + ], + "name" : "Perl Weekly Challenge - 096", + "colorByPoint" : 1 } - }, - "tooltip" : { - "pointFormat" : "{point.name}: {point.y:f}
", - "headerFormat" : "{series.name}
", - "followPointer" : 1 - }, - "legend" : { - "enabled" : 0 - }, - "subtitle" : { - "text" : "[Champions: 13] Last updated at 2021-01-19 09:31:15 GMT" - }, - "chart" : { - "type" : "column" - }, - "xAxis" : { - "type" : "category" - } + ] } diff --git a/stats/pwc-language-breakdown-summary.json b/stats/pwc-language-breakdown-summary.json index 2139f7a60d..2a5b9c1b33 100644 --- a/stats/pwc-language-breakdown-summary.json +++ b/stats/pwc-language-breakdown-summary.json @@ -1,28 +1,24 @@ { + "chart" : { + "type" : "column" + }, + "title" : { + "text" : "Perl Weekly Challenge Contributions [2019 - 2020]" + }, "yAxis" : { + "min" : 0, "title" : { "text" : null - }, - "min" : 0 + } }, - "title" : { - "text" : "Perl Weekly Challenge Contributions [2019 - 2020]" + "legend" : { + "enabled" : "false" + }, + "subtitle" : { + "text" : "Last updated at 2021-01-19 12:09:23 GMT" }, "series" : [ { - "name" : "Contributions", - "dataLabels" : { - "align" : "right", - "rotation" : -90, - "format" : "{point.y:.0f}", - "color" : "#FFFFFF", - "y" : 10, - "style" : { - "fontSize" : "13px", - "fontFamily" : "Verdana, sans-serif" - }, - "enabled" : "true" - }, "data" : [ [ "Blog", @@ -30,34 +26,38 @@ ], [ "Perl", - 4408 + 4410 ], [ "Raku", - 2891 + 2893 ] - ] + ], + "dataLabels" : { + "format" : "{point.y:.0f}", + "style" : { + "fontFamily" : "Verdana, sans-serif", + "fontSize" : "13px" + }, + "rotation" : -90, + "enabled" : "true", + "align" : "right", + "color" : "#FFFFFF", + "y" : 10 + }, + "name" : "Contributions" } ], - "tooltip" : { - "pointFormat" : "{point.y:.0f}" - }, - "legend" : { - "enabled" : "false" - }, - "subtitle" : { - "text" : "Last updated at 2021-01-19 09:31:15 GMT" - }, - "chart" : { - "type" : "column" - }, "xAxis" : { "type" : "category", "labels" : { "style" : { - "fontSize" : "13px", - "fontFamily" : "Verdana, sans-serif" + "fontFamily" : "Verdana, sans-serif", + "fontSize" : "13px" } } + }, + "tooltip" : { + "pointFormat" : "{point.y:.0f}" } } diff --git a/stats/pwc-language-breakdown.json b/stats/pwc-language-breakdown.json index 1df837b46f..0fd3af973d 100644 --- a/stats/pwc-language-breakdown.json +++ b/stats/pwc-language-breakdown.json @@ -1,526 +1,7 @@ { - "xAxis" : { - "type" : "category" - }, - "tooltip" : { - "followPointer" : "true", - "pointFormat" : "Challenge {point.name}: {point.y:f}
", - "headerFormat" : "" - }, - "subtitle" : { - "text" : "Click the columns to drilldown the language breakdown. Last updated at 2021-01-19 09:31:15 GMT" - }, - "chart" : { - "type" : "column" - }, - "legend" : { - "enabled" : "false" - }, - "series" : [ - { - "colorByPoint" : "true", - "data" : [ - { - "drilldown" : "001", - "name" : "#001", - "y" : 149 - }, - { - "drilldown" : "002", - "name" : "#002", - "y" : 118 - }, - { - "y" : 75, - "name" : "#003", - "drilldown" : "003" - }, - { - "y" : 95, - "name" : "#004", - "drilldown" : "004" - }, - { - "name" : "#005", - "y" : 76, - "drilldown" : "005" - }, - { - "drilldown" : "006", - "y" : 56, - "name" : "#006" - }, - { - "drilldown" : "007", - "name" : "#007", - "y" : 63 - }, - { - "name" : "#008", - "y" : 76, - "drilldown" : "008" - }, - { - "y" : 74, - "name" : "#009", - "drilldown" : "009" - }, - { - "drilldown" : "010", - "y" : 64, - "name" : "#010" - }, - { - "drilldown" : "011", - "y" : 83, - "name" : "#011" - }, - { - "drilldown" : "012", - "name" : "#012", - "y" : 87 - }, - { - "name" : "#013", - "y" : 82, - "drilldown" : "013" - }, - { - "drilldown" : "014", - "y" : 100, - "name" : "#014" - }, - { - "drilldown" : "015", - "name" : "#015", - "y" : 97 - }, - { - "y" : 70, - "name" : "#016", - "drilldown" : "016" - }, - { - "drilldown" : "017", - "name" : "#017", - "y" : 83 - }, - { - "drilldown" : "018", - "name" : "#018", - "y" : 80 - }, - { - "name" : "#019", - "y" : 99, - "drilldown" : "019" - }, - { - "drilldown" : "020", - "y" : 97, - "name" : "#020" - }, - { - "drilldown" : "021", - "name" : "#021", - "y" : 69 - }, - { - "name" : "#022", - "y" : 65, - "drilldown" : "022" - }, - { - "drilldown" : "023", - "name" : "#023", - "y" : 93 - }, - { - "y" : 72, - "name" : "#024", - "drilldown" : "024" - }, - { - "drilldown" : "025", - "name" : "#025", - "y" : 57 - }, - { - "drilldown" : "026", - "name" : "#026", - "y" : 72 - }, - { - "y" : 60, - "name" : "#027", - "drilldown" : "027" - }, - { - "y" : 80, - "name" : "#028", - "drilldown" : "028" - }, - { - "name" : "#029", - "y" : 79, - "drilldown" : "029" - }, - { - "y" : 117, - "name" : "#030", - "drilldown" : "030" - }, - { - "drilldown" : "031", - "y" : 89, - "name" : "#031" - }, - { - "name" : "#032", - "y" : 94, - "drilldown" : "032" - }, - { - "y" : 110, - "name" : "#033", - "drilldown" : "033" - }, - { - "y" : 64, - "name" : "#034", - "drilldown" : "034" - }, - { - "drilldown" : "035", - "name" : "#035", - "y" : 64 - }, - { - "drilldown" : "036", - "name" : "#036", - "y" : 68 - }, - { - "drilldown" : "037", - "name" : "#037", - "y" : 67 - }, - { - "drilldown" : "038", - "name" : "#038", - "y" : 67 - }, - { - "drilldown" : "039", - "name" : "#039", - "y" : 62 - }, - { - "drilldown" : "040", - "name" : "#040", - "y" : 73 - }, - { - "name" : "#041", - "y" : 76, - "drilldown" : "041" - }, - { - "drilldown" : "042", - "name" : "#042", - "y" : 90 - }, - { - "y" : 68, - "name" : "#043", - "drilldown" : "043" - }, - { - "name" : "#044", - "y" : 84, - "drilldown" : "044" - }, - { - "name" : "#045", - "y" : 96, - "drilldown" : "045" - }, - { - "y" : 87, - "name" : "#046", - "drilldown" : "046" - }, - { - "name" : "#047", - "y" : 84, - "drilldown" : "047" - }, - { - "drilldown" : "048", - "y" : 108, - "name" : "#048" - }, - { - "name" : "#049", - "y" : 89, - "drilldown" : "049" - }, - { - "drilldown" : "050", - "y" : 98, - "name" : "#050" - }, - { - "y" : 89, - "name" : "#051", - "drilldown" : "051" - }, - { - "y" : 91, - "name" : "#052", - "drilldown" : "052" - }, - { - "drilldown" : "053", - "name" : "#053", - "y" : 101 - }, - { - "drilldown" : "054", - "name" : "#054", - "y" : 103 - }, - { - "drilldown" : "055", - "name" : "#055", - "y" : 88 - }, - { - "drilldown" : "056", - "name" : "#056", - "y" : 95 - }, - { - "drilldown" : "057", - "y" : 80, - "name" : "#057" - }, - { - "name" : "#058", - "y" : 69, - "drilldown" : "058" - }, - { - "name" : "#059", - "y" : 89, - "drilldown" : "059" - }, - { - "name" : "#060", - "y" : 85, - "drilldown" : "060" - }, - { - "drilldown" : "061", - "name" : "#061", - "y" : 81 - }, - { - "drilldown" : "062", - "name" : "#062", - "y" : 56 - }, - { - "y" : 89, - "name" : "#063", - "drilldown" : "063" - }, - { - "drilldown" : "064", - "y" : 80, - "name" : "#064" - }, - { - "y" : 73, - "name" : "#065", - "drilldown" : "065" - }, - { - "name" : "#066", - "y" : 84, - "drilldown" : "066" - }, - { - "drilldown" : "067", - "name" : "#067", - "y" : 90 - }, - { - "name" : "#068", - "y" : 75, - "drilldown" : "068" - }, - { - "name" : "#069", - "y" : 83, - "drilldown" : "069" - }, - { - "drilldown" : "070", - "name" : "#070", - "y" : 93 - }, - { - "drilldown" : "071", - "y" : 78, - "name" : "#071" - }, - { - "drilldown" : "072", - "name" : "#072", - "y" : 112 - }, - { - "name" : "#073", - "y" : 110, - "drilldown" : "073" - }, - { - "y" : 115, - "name" : "#074", - "drilldown" : "074" - }, - { - "y" : 113, - "name" : "#075", - "drilldown" : "075" - }, - { - "drilldown" : "076", - "y" : 99, - "name" : "#076" - }, - { - "drilldown" : "077", - "y" : 98, - "name" : "#077" - }, - { - "y" : 127, - "name" : "#078", - "drilldown" : "078" - }, - { - "name" : "#079", - "y" : 122, - "drilldown" : "079" - }, - { - "y" : 127, - "name" : "#080", - "drilldown" : "080" - }, - { - "drilldown" : "081", - "y" : 114, - "name" : "#081" - }, - { - "y" : 114, - "name" : "#082", - "drilldown" : "082" - }, - { - "drilldown" : "083", - "y" : 127, - "name" : "#083" - }, - { - "name" : "#084", - "y" : 119, - "drilldown" : "084" - }, - { - "drilldown" : "085", - "name" : "#085", - "y" : 114 - }, - { - "name" : "#086", - "y" : 104, - "drilldown" : "086" - }, - { - "drilldown" : "087", - "y" : 101, - "name" : "#087" - }, - { - "y" : 121, - "name" : "#088", - "drilldown" : "088" - }, - { - "drilldown" : "089", - "y" : 113, - "name" : "#089" - }, - { - "name" : "#090", - "y" : 113, - "drilldown" : "090" - }, - { - "y" : 106, - "name" : "#091", - "drilldown" : "091" - }, - { - "y" : 93, - "name" : "#092", - "drilldown" : "092" - }, - { - "y" : 85, - "name" : "#093", - "drilldown" : "093" - }, - { - "name" : "#094", - "y" : 85, - "drilldown" : "094" - }, - { - "drilldown" : "095", - "name" : "#095", - "y" : 103 - }, - { - "drilldown" : "096", - "name" : "#096", - "y" : 35 - } - ], - "name" : "Perl Weekly Challenge Languages" - } - ], - "plotOptions" : { - "series" : { - "borderWidth" : 0, - "dataLabels" : { - "enabled" : 1, - "format" : "{point.y}" - } - } - }, - "title" : { - "text" : "Perl Weekly Challenge Language" - }, "drilldown" : { "series" : [ { - "name" : "001", - "id" : "001", "data" : [ [ "Perl", @@ -534,7 +15,9 @@ "Blog", 11 ] - ] + ], + "id" : "001", + "name" : "001" }, { "data" : [ @@ -555,8 +38,8 @@ "name" : "002" }, { - "name" : "003", "id" : "003", + "name" : "003", "data" : [ [ "Perl", @@ -573,8 +56,6 @@ ] }, { - "id" : "004", - "name" : "004", "data" : [ [ "Perl", @@ -588,9 +69,13 @@ "Blog", 10 ] - ] + ], + "id" : "004", + "name" : "004" }, { + "name" : "005", + "id" : "005", "data" : [ [ "Perl", @@ -604,11 +89,11 @@ "Blog", 12 ] - ], - "name" : "005", - "id" : "005" + ] }, { + "id" : "006", + "name" : "006", "data" : [ [ "Perl", @@ -622,11 +107,11 @@ "Blog", 7 ] - ], - "id" : "006", - "name" : "006" + ] }, { + "name" : "007", + "id" : "007", "data" : [ [ "Perl", @@ -640,11 +125,11 @@ "Blog", 10 ] - ], - "id" : "007", - "name" : "007" + ] }, { + "id" : "008", + "name" : "008", "data" : [ [ "Perl", @@ -658,9 +143,7 @@ "Blog", 12 ] - ], - "id" : "008", - "name" : "008" + ] }, { "data" : [ @@ -681,6 +164,8 @@ "name" : "009" }, { + "id" : "010", + "name" : "010", "data" : [ [ "Perl", @@ -694,9 +179,7 @@ "Blog", 11 ] - ], - "name" : "010", - "id" : "010" + ] }, { "data" : [ @@ -717,6 +200,8 @@ "name" : "011" }, { + "name" : "012", + "id" : "012", "data" : [ [ "Perl", @@ -730,13 +215,9 @@ "Blog", 11 ] - ], - "name" : "012", - "id" : "012" + ] }, { - "name" : "013", - "id" : "013", "data" : [ [ "Perl", @@ -750,11 +231,11 @@ "Blog", 13 ] - ] + ], + "name" : "013", + "id" : "013" }, { - "name" : "014", - "id" : "014", "data" : [ [ "Perl", @@ -768,11 +249,13 @@ "Blog", 15 ] - ] + ], + "name" : "014", + "id" : "014" }, { - "id" : "015", "name" : "015", + "id" : "015", "data" : [ [ "Perl", @@ -821,12 +304,10 @@ 12 ] ], - "name" : "017", - "id" : "017" + "id" : "017", + "name" : "017" }, { - "name" : "018", - "id" : "018", "data" : [ [ "Perl", @@ -840,7 +321,9 @@ "Blog", 14 ] - ] + ], + "id" : "018", + "name" : "018" }, { "data" : [ @@ -875,8 +358,8 @@ 13 ] ], - "id" : "020", - "name" : "020" + "name" : "020", + "id" : "020" }, { "data" : [ @@ -893,8 +376,8 @@ 10 ] ], - "name" : "021", - "id" : "021" + "id" : "021", + "name" : "021" }, { "data" : [ @@ -915,8 +398,8 @@ "id" : "022" }, { - "name" : "023", "id" : "023", + "name" : "023", "data" : [ [ "Perl", @@ -933,8 +416,8 @@ ] }, { - "id" : "024", "name" : "024", + "id" : "024", "data" : [ [ "Perl", @@ -969,6 +452,8 @@ "name" : "025" }, { + "id" : "026", + "name" : "026", "data" : [ [ "Perl", @@ -982,13 +467,9 @@ "Blog", 10 ] - ], - "id" : "026", - "name" : "026" + ] }, { - "id" : "027", - "name" : "027", "data" : [ [ "Perl", @@ -1002,11 +483,11 @@ "Blog", 9 ] - ] + ], + "name" : "027", + "id" : "027" }, { - "id" : "028", - "name" : "028", "data" : [ [ "Perl", @@ -1020,11 +501,11 @@ "Blog", 9 ] - ] + ], + "id" : "028", + "name" : "028" }, { - "id" : "029", - "name" : "029", "data" : [ [ "Perl", @@ -1038,9 +519,13 @@ "Blog", 12 ] - ] + ], + "name" : "029", + "id" : "029" }, { + "id" : "030", + "name" : "030", "data" : [ [ "Perl", @@ -1054,13 +539,9 @@ "Blog", 10 ] - ], - "name" : "030", - "id" : "030" + ] }, { - "id" : "031", - "name" : "031", "data" : [ [ "Perl", @@ -1074,11 +555,13 @@ "Blog", 9 ] - ] + ], + "id" : "031", + "name" : "031" }, { - "id" : "032", "name" : "032", + "id" : "032", "data" : [ [ "Perl", @@ -1109,8 +592,8 @@ 10 ] ], - "name" : "033", - "id" : "033" + "id" : "033", + "name" : "033" }, { "id" : "034", @@ -1131,8 +614,6 @@ ] }, { - "id" : "035", - "name" : "035", "data" : [ [ "Perl", @@ -1146,11 +627,11 @@ "Blog", 9 ] - ] + ], + "id" : "035", + "name" : "035" }, { - "id" : "036", - "name" : "036", "data" : [ [ "Perl", @@ -1164,7 +645,9 @@ "Blog", 11 ] - ] + ], + "id" : "036", + "name" : "036" }, { "data" : [ @@ -1185,6 +668,8 @@ "id" : "037" }, { + "id" : "038", + "name" : "038", "data" : [ [ "Perl", @@ -1198,13 +683,9 @@ "Blog", 12 ] - ], - "id" : "038", - "name" : "038" + ] }, { - "id" : "039", - "name" : "039", "data" : [ [ "Perl", @@ -1218,11 +699,13 @@ "Blog", 12 ] - ] + ], + "name" : "039", + "id" : "039" }, { - "name" : "040", "id" : "040", + "name" : "040", "data" : [ [ "Perl", @@ -1271,12 +754,10 @@ 11 ] ], - "name" : "042", - "id" : "042" + "id" : "042", + "name" : "042" }, { - "id" : "043", - "name" : "043", "data" : [ [ "Perl", @@ -1290,11 +771,13 @@ "Blog", 11 ] - ] + ], + "id" : "043", + "name" : "043" }, { - "id" : "044", "name" : "044", + "id" : "044", "data" : [ [ "Perl", @@ -1325,8 +808,8 @@ 11 ] ], - "id" : "045", - "name" : "045" + "name" : "045", + "id" : "045" }, { "data" : [ @@ -1343,10 +826,12 @@ 10 ] ], - "id" : "046", - "name" : "046" + "name" : "046", + "id" : "046" }, { + "name" : "047", + "id" : "047", "data" : [ [ "Perl", @@ -1360,13 +845,11 @@ "Blog", 10 ] - ], - "id" : "047", - "name" : "047" + ] }, { - "name" : "048", "id" : "048", + "name" : "048", "data" : [ [ "Perl", @@ -1383,6 +866,8 @@ ] }, { + "id" : "049", + "name" : "049", "data" : [ [ "Perl", @@ -1396,9 +881,7 @@ "Blog", 12 ] - ], - "id" : "049", - "name" : "049" + ] }, { "data" : [ @@ -1415,8 +898,8 @@ 12 ] ], - "name" : "050", - "id" : "050" + "id" : "050", + "name" : "050" }, { "data" : [ @@ -1433,10 +916,12 @@ 11 ] ], - "id" : "051", - "name" : "051" + "name" : "051", + "id" : "051" }, { + "name" : "052", + "id" : "052", "data" : [ [ "Perl", @@ -1450,13 +935,11 @@ "Blog", 14 ] - ], - "id" : "052", - "name" : "052" + ] }, { - "name" : "053", "id" : "053", + "name" : "053", "data" : [ [ "Perl", @@ -1491,8 +974,8 @@ "id" : "054" }, { - "name" : "055", "id" : "055", + "name" : "055", "data" : [ [ "Perl", @@ -1523,12 +1006,10 @@ 16 ] ], - "id" : "056", - "name" : "056" + "name" : "056", + "id" : "056" }, { - "id" : "057", - "name" : "057", "data" : [ [ "Perl", @@ -1542,9 +1023,13 @@ "Blog", 15 ] - ] + ], + "id" : "057", + "name" : "057" }, { + "id" : "058", + "name" : "058", "data" : [ [ "Perl", @@ -1558,11 +1043,11 @@ "Blog", 13 ] - ], - "id" : "058", - "name" : "058" + ] }, { + "name" : "059", + "id" : "059", "data" : [ [ "Perl", @@ -1576,11 +1061,11 @@ "Blog", 16 ] - ], - "id" : "059", - "name" : "059" + ] }, { + "id" : "060", + "name" : "060", "data" : [ [ "Perl", @@ -1594,9 +1079,7 @@ "Blog", 16 ] - ], - "name" : "060", - "id" : "060" + ] }, { "data" : [ @@ -1631,8 +1114,8 @@ 11 ] ], - "name" : "062", - "id" : "062" + "id" : "062", + "name" : "062" }, { "data" : [ @@ -1649,10 +1132,12 @@ 13 ] ], - "name" : "063", - "id" : "063" + "id" : "063", + "name" : "063" }, { + "name" : "064", + "id" : "064", "data" : [ [ "Perl", @@ -1666,9 +1151,7 @@ "Blog", 16 ] - ], - "name" : "064", - "id" : "064" + ] }, { "data" : [ @@ -1685,8 +1168,8 @@ 15 ] ], - "name" : "065", - "id" : "065" + "id" : "065", + "name" : "065" }, { "data" : [ @@ -1707,8 +1190,6 @@ "name" : "066" }, { - "id" : "067", - "name" : "067", "data" : [ [ "Perl", @@ -1722,9 +1203,13 @@ "Blog", 18 ] - ] + ], + "id" : "067", + "name" : "067" }, { + "id" : "068", + "name" : "068", "data" : [ [ "Perl", @@ -1738,9 +1223,7 @@ "Blog", 13 ] - ], - "id" : "068", - "name" : "068" + ] }, { "name" : "069", @@ -1761,6 +1244,8 @@ ] }, { + "id" : "070", + "name" : "070", "data" : [ [ "Perl", @@ -1774,11 +1259,11 @@ "Blog", 17 ] - ], - "name" : "070", - "id" : "070" + ] }, { + "name" : "071", + "id" : "071", "data" : [ [ "Perl", @@ -1792,13 +1277,9 @@ "Blog", 15 ] - ], - "id" : "071", - "name" : "071" + ] }, { - "id" : "072", - "name" : "072", "data" : [ [ "Perl", @@ -1812,7 +1293,9 @@ "Blog", 19 ] - ] + ], + "id" : "072", + "name" : "072" }, { "data" : [ @@ -1883,12 +1366,10 @@ 16 ] ], - "id" : "076", - "name" : "076" + "name" : "076", + "id" : "076" }, { - "name" : "077", - "id" : "077", "data" : [ [ "Perl", @@ -1902,7 +1383,9 @@ "Blog", 14 ] - ] + ], + "name" : "077", + "id" : "077" }, { "data" : [ @@ -1941,8 +1424,6 @@ ] }, { - "name" : "080", - "id" : "080", "data" : [ [ "Perl", @@ -1956,7 +1437,9 @@ "Blog", 16 ] - ] + ], + "id" : "080", + "name" : "080" }, { "data" : [ @@ -1977,6 +1460,8 @@ "name" : "081" }, { + "id" : "082", + "name" : "082", "data" : [ [ "Perl", @@ -1990,13 +1475,11 @@ "Blog", 17 ] - ], - "id" : "082", - "name" : "082" + ] }, { - "id" : "083", "name" : "083", + "id" : "083", "data" : [ [ "Perl", @@ -2013,6 +1496,8 @@ ] }, { + "name" : "084", + "id" : "084", "data" : [ [ "Perl", @@ -2026,11 +1511,11 @@ "Blog", 12 ] - ], - "name" : "084", - "id" : "084" + ] }, { + "id" : "085", + "name" : "085", "data" : [ [ "Perl", @@ -2044,9 +1529,7 @@ "Blog", 18 ] - ], - "id" : "085", - "name" : "085" + ] }, { "data" : [ @@ -2067,6 +1550,8 @@ "id" : "086" }, { + "id" : "087", + "name" : "087", "data" : [ [ "Perl", @@ -2080,9 +1565,7 @@ "Blog", 14 ] - ], - "name" : "087", - "id" : "087" + ] }, { "data" : [ @@ -2099,12 +1582,10 @@ 20 ] ], - "id" : "088", - "name" : "088" + "name" : "088", + "id" : "088" }, { - "name" : "089", - "id" : "089", "data" : [ [ "Perl", @@ -2118,7 +1599,9 @@ "Blog", 20 ] - ] + ], + "id" : "089", + "name" : "089" }, { "data" : [ @@ -2135,8 +1618,8 @@ 17 ] ], - "name" : "090", - "id" : "090" + "id" : "090", + "name" : "090" }, { "name" : "091", @@ -2157,6 +1640,8 @@ ] }, { + "id" : "092", + "name" : "092", "data" : [ [ "Perl", @@ -2170,13 +1655,9 @@ "Blog", 15 ] - ], - "id" : "092", - "name" : "092" + ] }, { - "name" : "093", - "id" : "093", "data" : [ [ "Perl", @@ -2190,9 +1671,13 @@ "Blog", 16 ] - ] + ], + "name" : "093", + "id" : "093" }, { + "id" : "094", + "name" : "094", "data" : [ [ "Perl", @@ -2206,11 +1691,11 @@ "Blog", 17 ] - ], - "id" : "094", - "name" : "094" + ] }, { + "id" : "095", + "name" : "095", "data" : [ [ "Perl", @@ -2224,21 +1709,19 @@ "Blog", 18 ] - ], - "name" : "095", - "id" : "095" + ] }, { - "id" : "096", "name" : "096", + "id" : "096", "data" : [ [ "Perl", - 14 + 16 ], [ "Raku", - 15 + 17 ], [ "Blog", @@ -2248,9 +1731,526 @@ } ] }, + "tooltip" : { + "pointFormat" : "Challenge {point.name}: {point.y:f}
", + "headerFormat" : "", + "followPointer" : "true" + }, + "subtitle" : { + "text" : "Click the columns to drilldown the language breakdown. Last updated at 2021-01-19 12:09:23 GMT" + }, + "legend" : { + "enabled" : "false" + }, + "xAxis" : { + "type" : "category" + }, + "series" : [ + { + "colorByPoint" : "true", + "name" : "Perl Weekly Challenge Languages", + "data" : [ + { + "drilldown" : "001", + "name" : "#001", + "y" : 149 + }, + { + "drilldown" : "002", + "name" : "#002", + "y" : 118 + }, + { + "drilldown" : "003", + "y" : 75, + "name" : "#003" + }, + { + "y" : 95, + "name" : "#004", + "drilldown" : "004" + }, + { + "drilldown" : "005", + "y" : 76, + "name" : "#005" + }, + { + "drilldown" : "006", + "y" : 56, + "name" : "#006" + }, + { + "drilldown" : "007", + "y" : 63, + "name" : "#007" + }, + { + "drilldown" : "008", + "y" : 76, + "name" : "#008" + }, + { + "drilldown" : "009", + "name" : "#009", + "y" : 74 + }, + { + "y" : 64, + "name" : "#010", + "drilldown" : "010" + }, + { + "name" : "#011", + "y" : 83, + "drilldown" : "011" + }, + { + "drilldown" : "012", + "y" : 87, + "name" : "#012" + }, + { + "y" : 82, + "name" : "#013", + "drilldown" : "013" + }, + { + "drilldown" : "014", + "y" : 100, + "name" : "#014" + }, + { + "y" : 97, + "name" : "#015", + "drilldown" : "015" + }, + { + "drilldown" : "016", + "name" : "#016", + "y" : 70 + }, + { + "name" : "#017", + "y" : 83, + "drilldown" : "017" + }, + { + "y" : 80, + "name" : "#018", + "drilldown" : "018" + }, + { + "y" : 99, + "name" : "#019", + "drilldown" : "019" + }, + { + "name" : "#020", + "y" : 97, + "drilldown" : "020" + }, + { + "drilldown" : "021", + "name" : "#021", + "y" : 69 + }, + { + "y" : 65, + "name" : "#022", + "drilldown" : "022" + }, + { + "drilldown" : "023", + "name" : "#023", + "y" : 93 + }, + { + "drilldown" : "024", + "name" : "#024", + "y" : 72 + }, + { + "drilldown" : "025", + "name" : "#025", + "y" : 57 + }, + { + "y" : 72, + "name" : "#026", + "drilldown" : "026" + }, + { + "name" : "#027", + "y" : 60, + "drilldown" : "027" + }, + { + "y" : 80, + "name" : "#028", + "drilldown" : "028" + }, + { + "drilldown" : "029", + "y" : 79, + "name" : "#029" + }, + { + "drilldown" : "030", + "y" : 117, + "name" : "#030" + }, + { + "drilldown" : "031", + "y" : 89, + "name" : "#031" + }, + { + "drilldown" : "032", + "y" : 94, + "name" : "#032" + }, + { + "drilldown" : "033", + "name" : "#033", + "y" : 110 + }, + { + "drilldown" : "034", + "name" : "#034", + "y" : 64 + }, + { + "drilldown" : "035", + "y" : 64, + "name" : "#035" + }, + { + "y" : 68, + "name" : "#036", + "drilldown" : "036" + }, + { + "drilldown" : "037", + "y" : 67, + "name" : "#037" + }, + { + "y" : 67, + "name" : "#038", + "drilldown" : "038" + }, + { + "y" : 62, + "name" : "#039", + "drilldown" : "039" + }, + { + "drilldown" : "040", + "y" : 73, + "name" : "#040" + }, + { + "name" : "#041", + "y" : 76, + "drilldown" : "041" + }, + { + "y" : 90, + "name" : "#042", + "drilldown" : "042" + }, + { + "drilldown" : "043", + "name" : "#043", + "y" : 68 + }, + { + "y" : 84, + "name" : "#044", + "drilldown" : "044" + }, + { + "drilldown" : "045", + "y" : 96, + "name" : "#045" + }, + { + "y" : 87, + "name" : "#046", + "drilldown" : "046" + }, + { + "drilldown" : "047", + "y" : 84, + "name" : "#047" + }, + { + "name" : "#048", + "y" : 108, + "drilldown" : "048" + }, + { + "drilldown" : "049", + "name" : "#049", + "y" : 89 + }, + { + "drilldown" : "050", + "y" : 98, + "name" : "#050" + }, + { + "drilldown" : "051", + "y" : 89, + "name" : "#051" + }, + { + "drilldown" : "052", + "name" : "#052", + "y" : 91 + }, + { + "name" : "#053", + "y" : 101, + "drilldown" : "053" + }, + { + "y" : 103, + "name" : "#054", + "drilldown" : "054" + }, + { + "drilldown" : "055", + "name" : "#055", + "y" : 88 + }, + { + "drilldown" : "056", + "name" : "#056", + "y" : 95 + }, + { + "name" : "#057", + "y" : 80, + "drilldown" : "057" + }, + { + "drilldown" : "058", + "y" : 69, + "name" : "#058" + }, + { + "drilldown" : "059", + "name" : "#059", + "y" : 89 + }, + { + "y" : 85, + "name" : "#060", + "drilldown" : "060" + }, + { + "y" : 81, + "name" : "#061", + "drilldown" : "061" + }, + { + "y" : 56, + "name" : "#062", + "drilldown" : "062" + }, + { + "drilldown" : "063", + "y" : 89, + "name" : "#063" + }, + { + "y" : 80, + "name" : "#064", + "drilldown" : "064" + }, + { + "name" : "#065", + "y" : 73, + "drilldown" : "065" + }, + { + "name" : "#066", + "y" : 84, + "drilldown" : "066" + }, + { + "y" : 90, + "name" : "#067", + "drilldown" : "067" + }, + { + "drilldown" : "068", + "y" : 75, + "name" : "#068" + }, + { + "drilldown" : "069", + "y" : 83, + "name" : "#069" + }, + { + "y" : 93, + "name" : "#070", + "drilldown" : "070" + }, + { + "y" : 78, + "name" : "#071", + "drilldown" : "071" + }, + { + "y" : 112, + "name" : "#072", + "drilldown" : "072" + }, + { + "drilldown" : "073", + "name" : "#073", + "y" : 110 + }, + { + "drilldown" : "074", + "y" : 115, + "name" : "#074" + }, + { + "name" : "#075", + "y" : 113, + "drilldown" : "075" + }, + { + "y" : 99, + "name" : "#076", + "drilldown" : "076" + }, + { + "y" : 98, + "name" : "#077", + "drilldown" : "077" + }, + { + "drilldown" : "078", + "y" : 127, + "name" : "#078" + }, + { + "drilldown" : "079", + "y" : 122, + "name" :