From 771b67fe896d14f2244e14255e847aa34a3e5a7e Mon Sep 17 00:00:00 2001 From: Mohammad S Anwar Date: Thu, 4 Jan 2024 15:55:04 +0000 Subject: - Added solutions by Ulrich Rieke. - Added solutions by Simon Proctor. - Added solutions by Roger Bell_West. - Added solutions by Arne Sommer. - Added solutions by Matthew Neleigh. - Added solutions by David Ferrone. - Added solutions by Peter Campbell Smith. --- challenge-250/ulrich-rieke/cpp/ch-1.cpp | 39 + challenge-250/ulrich-rieke/cpp/ch-2.cpp | 43 + challenge-250/ulrich-rieke/haskell/ch-1.hs | 8 + challenge-250/ulrich-rieke/haskell/ch-2.hs | 15 + challenge-250/ulrich-rieke/perl/ch-1.pl | 22 + challenge-250/ulrich-rieke/perl/ch-2.pl | 25 + challenge-250/ulrich-rieke/raku/ch-1.raku | 17 + challenge-250/ulrich-rieke/raku/ch-2.raku | 17 + challenge-250/ulrich-rieke/rust/ch-1.rs | 23 + challenge-250/ulrich-rieke/rust/ch-2.rs | 23 + stats/pwc-current.json | 333 ++- stats/pwc-language-breakdown-summary.json | 62 +- stats/pwc-language-breakdown.json | 3446 ++++++++++++++-------------- stats/pwc-leaders.json | 788 +++---- stats/pwc-summary-1-30.json | 30 +- stats/pwc-summary-121-150.json | 126 +- stats/pwc-summary-151-180.json | 40 +- stats/pwc-summary-181-210.json | 108 +- stats/pwc-summary-211-240.json | 52 +- stats/pwc-summary-241-270.json | 36 +- stats/pwc-summary-271-300.json | 106 +- stats/pwc-summary-301-330.json | 46 +- stats/pwc-summary-31-60.json | 38 +- stats/pwc-summary-61-90.json | 100 +- stats/pwc-summary-91-120.json | 28 +- stats/pwc-summary.json | 58 +- 26 files changed, 2993 insertions(+), 2636 deletions(-) create mode 100755 challenge-250/ulrich-rieke/cpp/ch-1.cpp create mode 100755 challenge-250/ulrich-rieke/cpp/ch-2.cpp create mode 100755 challenge-250/ulrich-rieke/haskell/ch-1.hs create mode 100755 challenge-250/ulrich-rieke/haskell/ch-2.hs create mode 100755 challenge-250/ulrich-rieke/perl/ch-1.pl create mode 100755 challenge-250/ulrich-rieke/perl/ch-2.pl create mode 100755 challenge-250/ulrich-rieke/raku/ch-1.raku create mode 100755 challenge-250/ulrich-rieke/raku/ch-2.raku create mode 100755 challenge-250/ulrich-rieke/rust/ch-1.rs create mode 100755 challenge-250/ulrich-rieke/rust/ch-2.rs diff --git a/challenge-250/ulrich-rieke/cpp/ch-1.cpp b/challenge-250/ulrich-rieke/cpp/ch-1.cpp new file mode 100755 index 0000000000..79e5d6ad1e --- /dev/null +++ b/challenge-250/ulrich-rieke/cpp/ch-1.cpp @@ -0,0 +1,39 @@ +#include +#include +#include +#include + +std::vector split( const std::string & startline , + const std::string & sep ) { + std::vector separated ; + std::string::size_type start { 0 } ; + std::string::size_type pos ; + do { + pos = startline.find_first_of( sep , start ) ; + separated.push_back( startline.substr(start , pos - start )) ; + start = pos + 1 ; + } while ( pos != std::string::npos ) ; + return separated ; +} + +int main( ) { + std::cout << "Enter some integers, separated by blanks!\n" ; + std::string line ; + std::getline( std::cin , line ) ; + std::vector numberstrings( split( line , " " ) ) ; + std::vector numbers ; + for ( auto s : numberstrings ) + numbers.push_back( std::stoi( s ) ) ; + std::vector selected ; + for ( int i = 0 ; i < numbers.size( ) ; i++ ) { + if ( i % 10 == numbers[ i ] ) + selected.push_back( i ) ; + } + if ( selected.size( ) > 0 ) + std::cout << *std::min_element( selected.begin( ) , selected.end( ) ) ; + else { + std::cout << -1 ; + } + std::cout << std::endl ; + return 0 ; +} diff --git a/challenge-250/ulrich-rieke/cpp/ch-2.cpp b/challenge-250/ulrich-rieke/cpp/ch-2.cpp new file mode 100755 index 0000000000..3366da7ecf --- /dev/null +++ b/challenge-250/ulrich-rieke/cpp/ch-2.cpp @@ -0,0 +1,43 @@ +#include +#include +#include +#include +#include + +std::vector split( const std::string & startline , + const std::string & sep ) { + std::vector separated ; + std::string::size_type start { 0 } ; + std::string::size_type pos ; + do { + pos = startline.find_first_of( sep , start ) ; + separated.push_back( startline.substr(start , pos - start )) ; + start = pos + 1 ; + } while ( pos != std::string::npos ) ; + return separated ; +} + +int convert( const std::string & s ) { + if ( std::any_of( s.begin( ) , s.end( ) , []( auto c ){ return + std::isalpha( c ) ; } ) ) { + return s.length( ) ; + } + else { + return std::stoi( s ) ; + } +} + +int main( ) { + std::cout << "Please enter some strings, separated by blanks!\n" ; + std::string line ; + std::getline( std::cin , line ) ; + std::vector allStrings { split( line , " " ) } ; + std::vector nums ( allStrings.size( ) ) ; + std::transform( allStrings.begin( ) , allStrings.end( ) , + nums.begin( ) , convert ) ; + std::cout << *std::max_element( nums.begin( ) , nums.end( )) << + std::endl ; + return 0 ; +} + + diff --git a/challenge-250/ulrich-rieke/haskell/ch-1.hs b/challenge-250/ulrich-rieke/haskell/ch-1.hs new file mode 100755 index 0000000000..5223b4abc7 --- /dev/null +++ b/challenge-250/ulrich-rieke/haskell/ch-1.hs @@ -0,0 +1,8 @@ +module Challenge250 + where + +solution :: [Int] -> Int +solution list = if null selected then -1 else minimum selected + where + selected = map fst $ filter (\p -> fst p `mod` 10 == snd p ) $ zip [0..] list + diff --git a/challenge-250/ulrich-rieke/haskell/ch-2.hs b/challenge-250/ulrich-rieke/haskell/ch-2.hs new file mode 100755 index 0000000000..d195d5a20d --- /dev/null +++ b/challenge-250/ulrich-rieke/haskell/ch-2.hs @@ -0,0 +1,15 @@ +module Challenge250_2 + where +import Data.Char ( isLetter ) + +convert :: String -> Int +convert s = if any isLetter s then length s else read s + +solution :: String -> Int +solution = maximum . map convert . words + +main :: IO ( ) +main = do + putStrLn "Please enter some strings, separated by blanks!" + strings <- getLine + print $ solution strings diff --git a/challenge-250/ulrich-rieke/perl/ch-1.pl b/challenge-250/ulrich-rieke/perl/ch-1.pl new file mode 100755 index 0000000000..01465f3e36 --- /dev/null +++ b/challenge-250/ulrich-rieke/perl/ch-1.pl @@ -0,0 +1,22 @@ +#!/usr/bin/perl ; +use strict ; +use warnings ; +use feature 'say' ; +use List::Util qw ( min ) ; + +say "Enter some integers separated by blanks!" ; +my $line = ; +chomp $line ; +my @numbers = split( /\s/ , $line ) ; +my @selected ; +for my $pos ( 0..scalar( @numbers ) - 1 ) { + if ( $pos % 10 == $numbers[ $pos ] ) { + push @selected , $pos ; + } +} +if ( @selected ) { + say min( @selected ) ; +} +else { + say -1 ; +} diff --git a/challenge-250/ulrich-rieke/perl/ch-2.pl b/challenge-250/ulrich-rieke/perl/ch-2.pl new file mode 100755 index 0000000000..92b7af750e --- /dev/null +++ b/challenge-250/ulrich-rieke/perl/ch-2.pl @@ -0,0 +1,25 @@ +#!/usr/bin/perl ; +use strict ; +use warnings ; +use feature 'say' ; +use List::Util qw ( max ) ; + +sub convert { + my $string = shift ; + if ( $string =~ /\D/ ) { + return length $string ; + } + else { + return ($string + 0) ; + } +} + +say "Enter some strings, separated by blanks!" ; +my $line = ; +chomp $line ; +my @strings = split( /\s/ , $line ) ; +my @converted ; +for my $s ( @strings ) { + push @converted , convert( $s ) ; +} +say max( @converted ) ; diff --git a/challenge-250/ulrich-rieke/raku/ch-1.raku b/challenge-250/ulrich-rieke/raku/ch-1.raku new file mode 100755 index 0000000000..7aae7c6b75 --- /dev/null +++ b/challenge-250/ulrich-rieke/raku/ch-1.raku @@ -0,0 +1,17 @@ +use v6 ; + +say "Enter some integers, separated by blanks!" ; +my $line = $*IN.get ; +my @numbers = $line.words.map( {.Int} ) ; +my @selected ; +for (0..@numbers.elems - 1 ) -> $pos { + if ( $pos % 10 == @numbers[ $pos ] ) { + @selected.push( $pos ) ; + } +} +if ( @selected ) { + say @selected.min ; +} +else { + say "-1" ; +} diff --git a/challenge-250/ulrich-rieke/raku/ch-2.raku b/challenge-250/ulrich-rieke/raku/ch-2.raku new file mode 100755 index 0000000000..2206682cef --- /dev/null +++ b/challenge-250/ulrich-rieke/raku/ch-2.raku @@ -0,0 +1,17 @@ +use v6 ; + +sub convert( $aString ) { + if ( $aString ~~ /\D/ ) { + return $aString.chars ; + } + else { + return $aString.Int ; + } +} + +say "Enter some strings, separated by blanks!" ; +my $line = $*IN.get ; +my @strings = $line.words ; +my @converted ; +@strings.map( { @converted.push( convert( $_ ) ) } ) ; +say @converted.max ; diff --git a/challenge-250/ulrich-rieke/rust/ch-1.rs b/challenge-250/ulrich-rieke/rust/ch-1.rs new file mode 100755 index 0000000000..7d8d5a7a31 --- /dev/null +++ b/challenge-250/ulrich-rieke/rust/ch-1.rs @@ -0,0 +1,23 @@ +use std::io ; + +fn main() { + println!("Enter some integers, separated by blanks!"); + let mut inline : String = String::new( ) ; + io::stdin( ).read_line( &mut inline ).unwrap( ) ; + let entered_line : &str = &*inline ; + let numbers : Vec = entered_line.split_whitespace( ).map( | s | + s.trim( ).parse::( ).unwrap( ) ).collect( ) ; + let mut selected : Vec = Vec::new( ) ; + let len = numbers.len( ) ; + for i in 0..len { + if i % 10 == numbers[ i ] as usize { + selected.push( i ) ; + } + } + if selected.len( ) > 0 { + println!("{}" , selected.iter( ).min( ).unwrap( ) ) ; + } + else { + println!("-1") ; + } +} diff --git a/challenge-250/ulrich-rieke/rust/ch-2.rs b/challenge-250/ulrich-rieke/rust/ch-2.rs new file mode 100755 index 0000000000..2e96e6eda3 --- /dev/null +++ b/challenge-250/ulrich-rieke/rust/ch-2.rs @@ -0,0 +1,23 @@ +use std::io ; + +fn convert( term : &&str ) -> usize { + if term.chars( ).all( | d | d.is_digit( 10 )) { + term.parse::( ).unwrap( ) + } + else { + term.chars( ).count( ) + } +} + +fn main() { + println!("Please enter some strings , separated by words!"); + let mut inline : String = String::new( ) ; + io::stdin( ).read_line( &mut inline ).unwrap( ) ; + let entered_line : &str = &*inline ; + let terms : Vec<&str> = entered_line.split_whitespace( ).map( | s | + s.trim( ) ).collect( ) ; + let mut converted : Vec = Vec::new( ) ; + terms.iter( ).map( | w | convert( &w ) ).for_each( | d | + converted.push( d ) ) ; + println!("{}" , converted.iter( ).max( ).unwrap( ) ) ; +} diff --git a/stats/pwc-current.json b/stats/pwc-current.json index f4829b3cd5..3f6f064253 100644 --- a/stats/pwc-current.json +++ b/stats/pwc-current.json @@ -1,89 +1,20 @@ { - "chart" : { - "type" : "column" + "yAxis" : { + "title" : { + "text" : "Total Solutions" + } }, "subtitle" : { - "text" : "[Champions: 13] Last updated at 2024-01-02 12:36:13 GMT" + "text" : "[Champions: 20] Last updated at 2024-01-04 15:50:20 GMT" }, - "xAxis" : { - "type" : "category" + "title" : { + "text" : "The Weekly Challenge - 250" }, - "series" : [ - { - "name" : "The Weekly Challenge - 250", - "colorByPoint" : 1, - "data" : [ - { - "drilldown" : "Ali Moradi", - "name" : "Ali Moradi", - "y" : 5 - }, - { - "y" : 2, - "drilldown" : "Bob Lied", - "name" : "Bob Lied" - }, - { - "name" : "Dave Jacoby", - "drilldown" : "Dave Jacoby", - "y" : 3 - }, - { - "y" : 2, - "name" : "David Ferrone", - "drilldown" : "David Ferrone" - }, - { - "y" : 2, - "name" : "E. Choroba", - "drilldown" : "E. Choroba" - }, - { - "y" : 4, - "name" : "Mark Anderson", - "drilldown" : "Mark Anderson" - }, - { - "y" : 2, - "name" : "Niels van Dijke", - "drilldown" : "Niels van Dijke" - }, - { - "name" : "Packy Anderson", - "drilldown" : "Packy Anderson", - "y" : 5 - }, - { - "y" : 2, - "drilldown" : "Peter Meszaros", - "name" : "Peter Meszaros" - }, - { - "y" : 3, - "drilldown" : "Robbie Hatley", - "name" : "Robbie Hatley" - }, - { - "drilldown" : "Stephen G. Lynn", - "name" : "Stephen G. Lynn", - "y" : 3 - }, - { - "y" : 4, - "drilldown" : "Thomas Kohler", - "name" : "Thomas Kohler" - }, - { - "name" : "W. Luis Mochan", - "drilldown" : "W. Luis Mochan", - "y" : 3 - } - ] - } - ], "drilldown" : { "series" : [ { + "id" : "Ali Moradi", + "name" : "Ali Moradi", "data" : [ [ "Perl", @@ -97,19 +28,31 @@ "Blog", 1 ] + ] + }, + { + "data" : [ + [ + "Raku", + 2 + ], + [ + "Blog", + 1 + ] ], - "id" : "Ali Moradi", - "name" : "Ali Moradi" + "name" : "Arne Sommer", + "id" : "Arne Sommer" }, { "name" : "Bob Lied", + "id" : "Bob Lied", "data" : [ [ "Perl", 2 ] - ], - "id" : "Bob Lied" + ] }, { "data" : [ @@ -126,25 +69,39 @@ "name" : "Dave Jacoby" }, { + "id" : "David Ferrone", + "name" : "David Ferrone", "data" : [ [ "Perl", 2 ] - ], - "id" : "David Ferrone", - "name" : "David Ferrone" + ] }, { - "name" : "E. Choroba", "data" : [ [ "Perl", 2 ] ], + "name" : "E. Choroba", "id" : "E. Choroba" }, + { + "id" : "Luca Ferrari", + "name" : "Luca Ferrari", + "data" : [ + [ + "Raku", + 2 + ], + [ + "Blog", + 8 + ] + ] + }, { "data" : [ [ @@ -156,18 +113,28 @@ 2 ] ], - "id" : "Mark Anderson", - "name" : "Mark Anderson" + "name" : "Mark Anderson", + "id" : "Mark Anderson" + }, + { + "name" : "Matthew Neleigh", + "id" : "Matthew Neleigh", + "data" : [ + [ + "Perl", + 2 + ] + ] }, { - "name" : "Niels van Dijke", "data" : [ [ "Perl", 2 ] ], - "id" : "Niels van Dijke" + "id" : "Niels van Dijke", + "name" : "Niels van Dijke" }, { "data" : [ @@ -188,13 +155,27 @@ "name" : "Packy Anderson" }, { - "name" : "Peter Meszaros", + "name" : "Peter Campbell Smith", + "id" : "Peter Campbell Smith", + "data" : [ + [ + "Perl", + 2 + ], + [ + "Blog", + 1 + ] + ] + }, + { "data" : [ [ "Perl", 2 ] ], + "name" : "Peter Meszaros", "id" : "Peter Meszaros" }, { @@ -211,6 +192,30 @@ ] ] }, + { + "id" : "Roger Bell_West", + "name" : "Roger Bell_West", + "data" : [ + [ + "Perl", + 2 + ], + [ + "Raku", + 2 + ] + ] + }, + { + "data" : [ + [ + "Raku", + 2 + ] + ], + "id" : "Simon Proctor", + "name" : "Simon Proctor" + }, { "data" : [ [ @@ -226,7 +231,6 @@ "name" : "Stephen G. Lynn" }, { - "id" : "Thomas Kohler", "data" : [ [ "Perl", @@ -237,7 +241,22 @@ 2 ] ], - "name" : "Thomas Kohler" + "name" : "Thomas Kohler", + "id" : "Thomas Kohler" + }, + { + "data" : [ + [ + "Perl", + 2 + ], + [ + "Raku", + 2 + ] + ], + "id" : "Ulrich Rieke", + "name" : "Ulrich Rieke" }, { "data" : [ @@ -250,28 +269,128 @@ 1 ] ], - "id" : "W. Luis Mochan", - "name" : "W. Luis Mochan" + "name" : "W. Luis Mochan", + "id" : "W. Luis Mochan" } ] }, "plotOptions" : { "series" : { + "borderWidth" : 0, "dataLabels" : { "format" : "{point.y}", "enabled" : 1 - }, - "borderWidth" : 0 + } } }, - "yAxis" : { - "title" : { - "text" : "Total Solutions" + "series" : [ + { + "name" : "The Weekly Challenge - 250", + "colorByPoint" : 1, + "data" : [ + { + "y" : 5, + "name" : "Ali Moradi", + "drilldown" : "Ali Moradi" + }, + { + "drilldown" : "Arne Sommer", + "y" : 3, + "name" : "Arne Sommer" + }, + { + "y" : 2, + "name" : "Bob Lied", + "drilldown" : "Bob Lied" + }, + { + "y" : 3, + "name" : "Dave Jacoby", + "drilldown" : "Dave Jacoby" + }, + { + "y" : 2, + "name" : "David Ferrone", + "drilldown" : "David Ferrone" + }, + { + "drilldown" : "E. Choroba", + "y" : 2, + "name" : "E. Choroba" + }, + { + "name" : "Luca Ferrari", + "y" : 10, + "drilldown" : "Luca Ferrari" + }, + { + "y" : 4, + "name" : "Mark Anderson", + "drilldown" : "Mark Anderson" + }, + { + "drilldown" : "Matthew Neleigh", + "name" : "Matthew Neleigh", + "y" : 2 + }, + { + "drilldown" : "Niels van Dijke", + "y" : 2, + "name" : "Niels van Dijke" + }, + { + "drilldown" : "Packy Anderson", + "name" : "Packy Anderson", + "y" : 5 + }, + { + "y" : 3, + "name" : "Peter Campbell Smith", + "drilldown" : "Peter Campbell Smith" + }, + { + "drilldown" : "Peter Meszaros", + "y" : 2, + "name" : "Peter Meszaros" + }, + { + "drilldown" : "Robbie Hatley", + "name" : "Robbie Hatley", + "y" : 3 + }, + { + "name" : "Roger Bell_West", + "y" : 4, + "drilldown" : "Roger Bell_West" + }, + { + "drilldown" : "Simon Proctor", + "y" : 2, + "name" : "Simon Proctor" + }, + { + "name" : "Stephen G. Lynn", + "y" : 3, + "drilldown" : "Stephen G. Lynn" + }, + { + "name" : "Thomas Kohler", + "y" : 4, + "drilldown" : "Thomas Kohler" + }, + { + "drilldown" : "Ulrich Rieke", + "name" : "Ulrich Rieke", + "y" : 4 + }, + { + "drilldown" : "W. Luis Mochan", + "y" : 3, + "name" : "W. Luis Mochan" + } + ] } - }, - "title" : { - "text" : "The Weekly Challenge - 250" - }, + ], "legend" : { "enabled" : 0 }, @@ -279,5 +398,11 @@ "headerFormat" : "{series.name}
", "pointFormat" : "{point.name}: {point.y:f}
", "followPointer" : 1 + }, + "xAxis" : { + "type" : "category" + }, + "chart" : { + "type" : "column" } } diff --git a/stats/pwc-language-breakdown-summary.json b/stats/pwc-language-breakdown-summary.json index daaea91452..1cfcf1a068 100644 --- a/stats/pwc-language-breakdown-summary.json +++ b/stats/pwc-language-breakdown-summary.json @@ -1,63 +1,63 @@ { - "subtitle" : { - "text" : "Last updated at 2024-01-02 12:36:13 GMT" + "yAxis" : { + "title" : { + "text" : null + }, + "min" : 0 }, - "chart" : { - "type" : "column" + "subtitle" : { + "text" : "Last updated at 2024-01-04 15:50:20 GMT" }, - "xAxis" : { - "labels" : { - "style" : { - "fontSize" : "13px", - "fontFamily" : "Verdana, sans-serif" - } - }, - "type" : "category" + "title" : { + "text" : "The Weekly Challenge Contributions [2019 - 2024]" }, "series" : [ { "dataLabels" : { "format" : "{point.y:.0f}", "enabled" : "true", - "color" : "#FFFFFF", - "rotation" : -90, "align" : "right", "style" : { - "fontSize" : "13px", - "fontFamily" : "Verdana, sans-serif" + "fontFamily" : "Verdana, sans-serif", + "fontSize" : "13px" }, + "rotation" : -90, + "color" : "#FFFFFF", "y" : 10 }, - "name" : "Contributions", "data" : [ [ "Blog", - 4362 + 4372 ], [ "Perl", - 12875 + 12883 ], [ "Raku", - 7414 + 7424 ] - ] + ], + "name" : "Contributions" } ], - "yAxis" : { - "title" : { - "text" : null - }, - "min" : 0 - }, - "title" : { - "text" : "The Weekly Challenge Contributions [2019 - 2024]" + "tooltip" : { + "pointFormat" : "{point.y:.0f}" }, "legend" : { "enabled" : "false" }, - "tooltip" : { - "pointFormat" : "{point.y:.0f}" + "xAxis" : { + "type" : "category", + "labels" : { + "style" : { + "fontFamily" : "Verdana, sans-serif", + "fontSize" : "13px" + } + } + }, + "chart" : { + "type" : "column" } } diff --git a/stats/pwc-language-breakdown.json b/stats/pwc-language-breakdown.json index 549bdff888..8f45fee707 100644 --- a/stats/pwc-language-breakdown.json +++ b/stats/pwc-language-breakdown.json @@ -1,1285 +1,17 @@ { - "tooltip" : { - "followPointer" : "true", - "headerFormat" : "", - "pointFormat" : "Challenge {point.name}: {point.y:f}
" - }, - "legend" : { - "enabled" : "false" + "yAxis" : { + "title" : { + "text" : "Total Solutions" + } }, - "title" : { - "text" : "The Weekly Challenge Language" - }, - "series" : [ - { - "name" : "The Weekly Challenge Languages", - "colorByPoint" : "true", - "data" : [ - { - "y" : 164, - "name" : "#001", - "drilldown" : "001" - }, - { - "y" : 129, - "drilldown" : "002", - "name" : "#002" - }, - { - "y" : 87, - "name" : "#003", - "drilldown" : "003" - }, - { - "drilldown" : "004", - "name" : "#004", - "y" : 103 - }, - { - "y" : 80, - "drilldown" : "005", - "name" : "#005" - }, - { - "y" : 61, - "name" : "#006", - "drilldown" : "006" - }, - { - "y" : 69, - "name" : "#007", - "drilldown" : "007" - }, - { - "y" : 82, - "drilldown" : "008", - "name" : "#008" - }, - { - "y" : 80, - "drilldown" : "009", - "name" : "#009" - }, - { - "y" : 69, - "name" : "#010", - "drilldown" : "010" - }, - { - "name" : "#011", - "drilldown" : "011", - "y" : 89 - }, - { - "drilldown" : "012", - "name" : "#012", - "y" : 92 - }, - { - "y" : 87, - "drilldown" : "013", - "name" : "#013" - }, - { - "y" : 102, - "name" : "#014", - "drilldown" : "014" - }, - { - "y" : 101, - "drilldown" : "015", - "name" : "#015" - }, - { - "y" : 75, - "drilldown" : "016", - "name" : "#016" - }, - { - "y" : 86, - "name" : "#017", - "drilldown" : "017" - }, - { - "y" : 83, - "drilldown" : "018", - "name" : "#018" - }, - { - "y" : 105, - "drilldown" : "019", - "name" : "#019" - }, - { - "y" : 103, - "name" : "#020", - "drilldown" : "020" - }, - { - "drilldown" : "021", - "name" : "#021", - "y" : 74 - }, - { - "y" : 72, - "name" : "#022", - "drilldown" : "022" - }, - { - "name" : "#023", - "drilldown" : "023", - "y" : 101 - }, - { - "y" : 77, - "drilldown" : "024", - "name" : "#024" - }, - { - "y" : 62, - "drilldown" : "025", - "name" : "#025" - }, - { - "y" : 76, - "drilldown" : "026", - "name" : "#026" - }, - { - "name" : "#027", - "drilldown" : "027", - "y" : 64 - }, - { - "y" : 82, - "drilldown" : "028", - "name" : "#028" - }, - { - "y" : 83, - "name" : "#029", - "drilldown" : "029" - }, - { - "drilldown" : "030", - "name" : "#030", - "y" : 121 - }, - { - "y" : 93, - "name" : "#031", - "drilldown" : "031" - }, - { - "y" : 98, - "name" : "#032", - "drilldown" : "032" - }, - { - "y" : 114, - "name" : "#033", - "drilldown" : "033" - }, - { - "drilldown" : "034", - "name" : "#034", - "y" : 70 - }, - { - "drilldown" : "035", - "name" : "#035", - "y" : 68 - }, - { - "drilldown" : "036", - "name" : "#036", - "y" : 70 - }, - { - "name" : "#037", - "drilldown" : "037", - "y" : 70 - }, - { - "y" : 74, - "name" : "#038", - "drilldown" : "038" - }, - { - "y" : 68, - "name" : "#039", - "drilldown" : "039" - }, - { - "y" : 77, - "drilldown" : "040", - "name" : "#040" - }, - { - "name" : "#041", - "drilldown" : "041", - "y" : 80 - }, - { - "y" : 98, - "name" : "#042", - "drilldown" : "042" - }, - { - "drilldown" : "043", - "name" : "#043", - "y" : 72 - }, - { - "y" : 90, - "name" : "#044", - "drilldown" : "044" - }, - { - "y" : 102, - "name" : "#045", - "drilldown" : "045" - }, - { - "y" : 93, - "drilldown" : "046", - "name" : "#046" - }, - { - "drilldown" : "047", - "name" : "#047", - "y" : 88 - }, - { - "drilldown" : "048", - "name" : "#048", - "y" : 112 - }, - { - "drilldown" : "049", - "name" : "#049", - "y" : 93 - }, - { - "y" : 104, - "name" : "#050", - "drilldown" : "050" - }, - { - "y" : 95, - "name" : "#051", - "drilldown" : "051" - }, - { - "y" : 93, - "drilldown" : "052", - "name" : "#052" - }, - { - "y" : 105, - "name" : "#053", - "drilldown" : "053" - }, - { - "y" : 107, - "drilldown" : "054", - "name" : "#054" - }, - { - "y" : 92, - "drilldown" : "055", - "name" : "#055" - }, - { - "drilldown" : "056", - "name" : "#056", - "y" : 104 - }, - { - "name" : "#057", - "drilldown" : "057", - "y" : 86 - }, - { - "y" : 71, - "drilldown" : "058", - "name" : "#058" - }, - { - "name" : "#059", - "drilldown" : "059", - "y" : 93 - }, - { - "y" : 89, - "drilldown" : "060", - "name" : "#060" - }, - { - "y" : 85, - "name" : "#061", - "drilldown" : "061" - }, - { - "name" : "#062", - "drilldown" : "062", - "y" : 62 - }, - { - "name" : "#063", - "drilldown" : "063", - "y" : 93 - }, - { - "y" : 84, - "name" : "#064", - "drilldown" : "064" - }, - { - "y" : 77, - "name" : "#065", - "drilldown" : "065" - }, - { - "drilldown" : "066", - "name" : "#066", - "y" : 88 - }, - { - "name" : "#067", - "drilldown" : "067", - "y" : 94 - }, - { - "drilldown" : "068", - "name" : "#068", - "y" : 79 - }, - { - "y" : 87, - "drilldown" : "069", - "name" : "#069" - }, - { - "y" : 98, - "name" : "#070", - "drilldown" : "070" - }, - { - "y" : 82, - "name" : "#071", - "drilldown" : "071" - }, - { - "y" : 116, - "drilldown" : "072", - "name" : "#072" - }, - { - "y" : 112, - "drilldown" : "073", - "name" : "#073" - }, - { - "name" : "#074", - "drilldown" : "074", - "y" : 117 - }, - { - "y" : 117, - "name" : "#075", - "drilldown" : "075" - }, - { - "y" : 101, - "drilldown" : "076", - "name" : "#076" - }, - { - "drilldown" : "077", - "name" : "#077", - "y" : 100 - }, - { - "y" : 127, - "name" : "#078", - "drilldown" : "078" - }, - { - "drilldown" : "079", - "name" : "#079", - "y" : 122 - }, - { - "y" : 127, - "drilldown" : "080", - "name" : "#080" - }, - { - "y" : 114, - "name" : "#081", - "drilldown" : "081" - }, - { - "drilldown" : "082", - "name" : "#082", - "y" : 114 - }, - { - "y" : 127, - "drilldown" : "083", - "name" : "#083" - }, - { - "name" : "#084", - "drilldown" : "084", - "y" : 119 - }, - { - "drilldown" : "085", - "name" : "#085", - "y" : 113 - }, - { - "name" : "#086", - "drilldown" : "086", - "y" : 104 - }, - { - "y" : 101, - "name" : "#087", - "drilldown" : "087" - }, - { - "y" : 121, - "drilldown" : "088", - "name" : "#088" - }, - { - "drilldown" : "089", - "name" : "#089", - "y" : 113 - }, - { - "y" : 113, - "drilldown" : "090", - "name" : "#090" - }, - { - "name" : "#091", - "drilldown" : "091", - "y" : 108 - }, - { - "drilldown" : "092", - "name" : "#092", - "y" : 98 - }, - { - "name" : "#093", - "drilldown" : "093", - "y" : 87 - }, - { - "drilldown" : "094", - "name" : "#094", - "y" : 87 - }, - { - "name" : "#095", - "drilldown" : "095", - "y" : 108 - }, - { - "name" : "#096", - "drilldown" : "096", - "y" : 108 - }, - { - "name" : "#097", - "drilldown" : "097", - "y" : 111 - }, - { - "drilldown" : "098", - "name" : "#098", - "y" : 108 - }, - { - "drilldown" : "099", - "name" : "#099", - "y" : 97 - }, - { - "drilldown" : "100", - "name" : "#100", - "y" : 120 - }, - { - "y" : 83, - "name" : "#101", - "drilldown" : "101" - }, - { - "y" : 90, - "name" : "#102", - "drilldown" : "102" - }, - { - "y" : 79, - "name" : "#103", - "drilldown" : "103" - }, - { - "y" : 85, - "drilldown" : "104", - "name" : "#104" - }, - { - "name" : "#105", - "drilldown" : "105", - "y" : 77 - }, - { - "y" : 97, - "name" : "#106", - "drilldown" : "106" - }, - { - "drilldown" : "107", - "name" : "#107", - "y" : 92 - }, - { - "y" : 96, - "name" : "#108", - "drilldown" : "108" - }, - { - "y" : 109, - "name" : "#109", - "drilldown" : "109" - }, - { - "drilldown" : "110", - "name" : "#110", - "y" : 110 - }, - { - "y" : 93, - "drilldown" : "111", - "name" : "#111" - }, - { - "y" : 94, - "drilldown" : "112", - "name" : "#112" - }, - { - "y" : 94, - "drilldown" : "113", - "name" : "#113" - }, - { - "y" : 110, - "name" : "#114", - "drilldown" : "114" - }, - { - "y" : 98, - "name" : "#115", - "drilldown" : "115" - }, - { - "y" : 97, - "drilldown" : "116", - "name" : "#116" - }, - { - "y" : 99, - "name" : "#117", - "drilldown" : "117" - }, - { - "drilldown" : "118", - "name" : "#118", - "y" : 85 - }, - { - "drilldown" : "119", - "name" : "#119", - "y" : 125 - }, - { - "drilldown" : "120", - "name" : "#120", - "y" : 116 - }, - { - "name" : "#121", - "drilldown" : "121", - "y" : 92 - }, - { - "y" : 110, - "drilldown" : "122", - "name" : "#122" - }, - { - "y" : 105, - "name" : "#123", - "drilldown" : "123" - }, - { - "drilldown" : "124", - "name" : "#124", - "y" : 87 - }, - { - "name" : "#125", - "drilldown" : "125", - "y" : 65 - }, - { - "name" : "#126", - "drilldown" : "126", - "y" : 113 - }, - { - "name" : "#127", - "drilldown" : "127", - "y" : 115 - }, - { - "y" : 73, - "name" : "#128", - "drilldown" : "128" - }, - { - "y" : 52, - "name" : "#129", - "drilldown" : "129" - }, - { - "drilldown" : "130", - "name" : "#130", - "y" : 75 - }, - { - "y" : 91, - "name" : "#131", - "drilldown" : "131" - }, - { - "y" : 78, - "drilldown" : "132", - "name" : "#132" - }, - { - "y" : 95, - "drilldown" : "133", - "name" : "#133" - }, - { - "name" : "#134", - "drilldown" : "134", - "y" : 94 - }, - { - "y" : 104, - "name" : "#135", - "drilldown" : "135" - }, - { - "drilldown" : "136", - "name" : "#136", - "y" : 97 - }, - { - "drilldown" : "137", - "name" : "#137", - "y" : 100 - }, - { - "y" : 102, - "name" : "#138", - "drilldown" : "138" - }, - { - "name" : "#139", - "drilldown" : "139", - "y" : 97 - }, - { - "y" : 103, - "drilldown" : "140", - "name" : "#140" - }, - { - "y" : 102, - "drilldown" : "141", - "name" : "#141" - }, - { - "y" : 85, - "name" : "#142", - "drilldown" : "142" - }, - { - "drilldown" : "143", - "name" : "#143", - "y" : 85 - }, - { - "drilldown" : "144", - "name" : "#144", - "y" : 90 - }, - { - "y" : 96, - "name" : "#145", - "drilldown" : "145" - }, - { - "y" : 108, - "drilldown" : "146", - "name" : "#146" - }, - { - "y" : 107, - "drilldown" : "147", - "name" : "#147" - }, - { - "y" : 94, - "name" : "#148", - "drilldown" : "148" - }, - { - "y" : 88, - "drilldown" : "149", - "name" : "#149" - }, - { - "name" : "#150", - "drilldown" : "150", - "y" : 108 - }, - { - "y" : 78, - "name" : "#151", - "drilldown" : "151" - }, - { - "drilldown" : "152", - "name" : "#152", - "y" : 80 - }, - { - "y" : 97, - "drilldown" : "153", - "name" : "#153" - }, - { - "y" : 108, - "drilldown" : "154", - "name" : "#154" - }, - { - "name" : "#155", - "drilldown" : "155", - "y" : 99 - }, - { - "drilldown" : "156", - "name" : "#156", - "y" : 98 - }, - { - "name" : "#157", - "drilldown" : "157", - "y" : 97 - }, - { - "y" : 107, - "drilldown" : "158", - "name" : "#158" - }, - { - "name" : "#159", - "drilldown" : "159", - "y" : 92 - }, - { - "y" : 121, - "name" : "#160", - "drilldown" : "160" - }, - { - "y" : 102, - "name" : "#161", - "drilldown" : "161" - }, - { - "y" : 93, - "drilldown" : "162", - "name" : "#162" - }, - { - "y" : 118, - "drilldown" : "163", - "name" : "#163" - }, - { - "drilldown" : "164", - "name" : "#164", - "y" : 120 - }, - { - "name" : "#165", - "drilldown" : "165", - "y" : 80 - }, - { - "y" : 81, - "name" : "#166", - "drilldown" : "166" - }, - { - "name" : "#167", - "drilldown" : "167", - "y" : 75 - }, - { - "drilldown" : "168", - "name" : "#168", - "y" : 98 - }, - { - "name" : "#169", - "drilldown" : "169", - "y" : 107 - }, - { - "name" : "#170", - "drilldown" : "170", - "y" : 102 - }, - { - "drilldown" : "171", - "name" : "#171", - "y" : 113 - }, - { - "y" : 96, - "name" : "#172", - "drilldown" : "172" - }, - { - "name" : "#173", - "drilldown" : "173", - "y" : 113 - }, - { - "drilldown" : "174", - "name" : "#174", - "y" : 101 - }, - { - "drilldown" : "175", - "name" : "#175", - "y" : 114 - }, - { - "y" : 114, - "drilldown" : "176", - "name" : "#176" - }, - { - "y" : 107, - "drilldown" : "177", - "name" : "#177" - }, - { - "y" : 67, - "name" : "#178", - "drilldown" : "178" - }, - { - "y" : 74, - "name" : "#179", - "drilldown" : "179" - }, - { - "y" : 117, - "drilldown" : "180", - "name" : "#180" - }, - { - "y" : 99, - "name" : "#181", - "drilldown" : "181" - }, - { - "y" : 112, - "drilldown" : "182", - "name" : "#182" - }, - { - "y" : 89, - "drilldown" : "183", - "name" : "#183" - }, - { - "y" : 109, - "drilldown" : "184", - "name" : "#184" - }, - { - "y" : 117, - "name" : "#185", - "drilldown" : "185" - }, - { - "y" : 113, - "drilldown" : "186", - "name" : "#186" - }, - { - "name" : "#187", - "drilldown" : "187", - "y" : 111 - }, - { - "y" : 121, - "drilldown" : "188", - "name" : "#188" - }, - { - "y" : 119, - "name" : "#189", - "drilldown" : "189" - }, - { - "name" : "#190", - "drilldown" : "190", - "y" : 113 - }, - { - "y" : 119, - "name" : "#191", - "drilldown" : "191" - }, - { - "name" : "#192", - "drilldown" : "192", - "y" : 129 - }, - { - "name" : "#193", - "drilldown" : "193", - "y" : 112 - }, - { - "y" : 113, - "drilldown" : "194", - "name" : "#194" - }, - { - "name" : "#195", - "drilldown" : "195", - "y" : 110 - }, - { - "y" : 104, - "drilldown" : "196", - "name" : "#196" - }, - { - "y" : 105, - "drilldown" : "197", - "name" : "#197" - }, - { - "y" : 119, - "name" : "#198", - "drilldown" : "198" - }, - { - "y" : 119, - "name" : "#199", - "drilldown" : "199" - }, - { - "drilldown" : "200", - "name" : "#200", - "y" : 118 - }, - { - "drilldown" : "201", - "name" : "#201", - "y" : 111 - }, - { - "y" : 103, - "name" : "#202", - "drilldown" : "202" - }, - { - "y" : 98, - "name" : "#203", - "drilldown" : "203" - }, - { - "drilldown" : "204", - "name" : "#204", - "y" : 111 - }, - { - "drilldown" : "205", - "name" : "#205", - "y" : 120 - }, - { - "y" : 113, - "name" : "#206", - "drilldown" : "206" - }, - { - "y" : 120, - "drilldown" : "207", - "name" : "#207" - }, - { - "drilldown" : "208", - "name" : "#208", - "y" : 117 - }, - { - "y" : 102, - "name" : "#209", - "drilldown" : "209" - }, - { - "drilldown" : "210", - "name" : "#210", - "y" : 97 - }, - { - "y" : 111, - "drilldown" : "211", - "name" : "#211" - }, - { - "name" : "#212", - "drilldown" : "212", - "y" : 105 - }, - { - "drilldown" : "213", - "name" : "#213", - "y" : 100 - }, - { - "y" : 69, - "name" : "#214", - "drilldown" : "214" - }, - { - "y" : 115, - "name" : "#215", - "drilldown" : "215" - }, - { - "drilldown" : "216", - "name" : "#216", - "y" : 87 - }, - { - "y" : 115, - "drilldown" : "217", - "name" : "#217" - }, - { - "y" : 85, - "drilldown" : "218", - "name" : "#218" - }, - { - "y" : 83, - "name" : "#219", - "drilldown" : "219" - }, - { - "y" : 100, - "drilldown" : "220", - "name" : "#220" - }, - { - "y" : 84, - "name" : "#221", - "drilldown" : "221" - }, - { - "y" : 107, - "drilldown" : "222", - "name" : "#222" - }, - { - "name" : "#223", - "drilldown" : "223", - "y" : 87 - }, - { - "y" : 78, - "name" : "#224", - "drilldown" : "224" - }, - { - "y" : 113, - "name" : "#225", - "drilldown" : "225" - }, - { - "drilldown" : "226", - "name" : "#226", - "y" : 120 - }, - { - "y" : 114, - "drilldown" : "227", - "name" : "#227" - }, - { - "y" : 121, - "drilldown" : "228", - "name" : "#228" - }, - { - "name" : "#229", - "drilldown" : "229", - "y" : 115 - }, - { - "y" : 124, - "name" : "#230", - "drilldown" : "230" - }, - { - "y" : 139, - "name" : "#231", - "drilldown" : "231" - }, - { - "y" : 126, - "drilldown" : "233", - "name" : "#233" - }, - { - "name" : "#234", - "drilldown" : "234", - "y" : 111 - }, - { - "y" : 121, - "name" : "#235", - "drilldown" : "235" - }, - { - "drilldown" : "236", - "name" : "#236", - "y" : 114 - }, - { - "y" : 108, - "name" : "#237", - "drilldown" : "237" - }, - { - "y" : 126, - "name" : "#238", - "drilldown" : "238" - }, - { - "drilldown" : "239", - "name" : "#239", - "y" : 128 - }, - { - "drilldown" : "240", - "name" : "#240", - "y" : 124 - }, - { - "y" : 115, - "drilldown" : "241", - "name" : "#241" - }, - { - "drilldown" : "242", - "name" : "#242", - "y" : 126 - }, - { - "name" : "#243", - "drilldown" : "243", - "y" : 125 - }, - { - "name" : "#244", - "drilldown" : "244", - "y" : 120 - }, - { - "y" : 106, - "drilldown" : "245", - "name" : "#245" - }, - { - "y" : 91, - "name" : "#246", - "drilldown" : "246" - }, - { - "y" : 81, - "drilldown" : "247", - "name" : "#247" - }, - { - "drilldown" : "248", - "name" : "#248", - "y" : 102 - }, - { - "drilldown" : "249", - "name" : "#249", - "y" : 96 - }, - { - "y" : 40, - "name" : "#250", - "drilldown" : "250" - } - ] - } - ], - "plotOptions" : { - "series" : { - "dataLabels" : { - "format" : "{point.y}", - "enabled" : 1 - }, - "borderWidth" : 0 - } - }, - "yAxis" : { - "title" : { - "text" : "Total Solutions" - } + "subtitle" : { + "text" : "Click the columns to drilldown the language breakdown. Last updated at 2024-01-04 15:50:20 GMT" }, "drilldown" : { "series" : [ { + "id" : "001", + "name" : "001", "data" : [ [ "Perl", @@ -1293,11 +25,10 @@ "Blog", 12 ] - ], - "id" : "001", - "name" : "001" + ] }, { + "name" : "002", "id" : "002", "data" : [ [ @@ -1312,10 +43,11 @@ "Blog", 10 ] - ], - "name" : "002" + ] }, { + "id" : "003", + "name" : "003", "data" : [ [ "Perl", @@ -1329,12 +61,9 @@ "Blog", 9 ] - ], - "id" : "003", - "name" : "003" + ] }, { - "name" : "004", "data" : [ [ "Perl", @@ -1349,11 +78,10 @@ 10 ] ], + "name" : "004", "id" : "004" }, { - "name" : "005", - "id" : "005", "data" : [ [ "Perl", @@ -1367,10 +95,11 @@ "Blog", 12 ] - ] + ], + "id" : "005", + "name" : "005" }, { - "name" : "006", "data" : [ [ "Perl", @@ -1385,10 +114,10 @@ 7 ] ], + "name" : "006", "id" : "006" }, { - "name" : "007", "data" : [ [ "Perl", @@ -1403,9 +132,12 @@ 10 ] ], - "id" : "007" + "id" : "007", + "name" : "007" }, { + "id" : "008", + "name" : "008", "data" : [ [ "Perl", @@ -1419,9 +151,7 @@ "Blog", 12 ] - ], - "id" : "008", - "name" : "008" + ] }, { "data" : [ @@ -1438,10 +168,11 @@ 13 ] ], - "id" : "009", - "name" : "009" + "name" : "009", + "id" : "009" }, { + "name" : "010", "id" : "010", "data" : [ [ @@ -1456,11 +187,9 @@ "Blog", 11 ] - ], - "name" : "010" + ] }, { - "name" : "011", "data" : [ [ "Perl", @@ -1475,9 +204,12 @@ 10 ] ], + "name" : "011", "id" : "011" }, { + "id" : "012", + "name" : "012", "data" : [ [ "Perl", @@ -1491,12 +223,9 @@ "Blog", 11 ] - ], - "id" : "012", - "name" : "012" + ] }, { - "name" : "013", "data" : [ [ "Perl", @@ -1511,10 +240,10 @@ 13 ] ], + "name" : "013", "id" : "013" }, { - "name" : "014", "data" : [ [ "Perl", @@ -1529,7 +258,8 @@ 15 ] ], - "id" : "014" + "id" : "014", + "name" : "014" }, { "data" : [ @@ -1546,11 +276,10 @@ 15 ] ], - "id" : "015", - "name" : "015" + "name" : "015", + "id" : "015" }, { - "name" : "016", "data" : [ [ "Perl", @@ -1565,9 +294,11 @@ 13 ] ], + "name" : "016", "id" : "016" }, { + "id" : "017", "name" : "017", "data" : [ [ @@ -1582,8 +313,7 @@ "Blog", 12 ] - ], - "id" : "017" + ] }, { "data" : [ @@ -1604,6 +334,7 @@ "name" : "018" }, { + "name" : "019", "id" : "019", "data" : [ [ @@ -1618,10 +349,10 @@ "Blog", 13 ] - ], - "name" : "019" + ] }, { + "id" : "020", "name" : "020", "data" : [ [ @@ -1636,10 +367,11 @@ "Blog", 13 ] - ], - "id" : "020" + ] }, { + "id" : "021", + "name" : "021", "data" : [ [ "Perl", @@ -1653,12 +385,11 @@ "Blog", 10 ] - ], - "id" : "021", - "name" : "021" + ] }, { "name" : "022", + "id" : "022", "data" : [ [ "Perl", @@ -1672,10 +403,10 @@ "Blog", 10 ] - ], - "id" : "022" + ] }, { + "name" : "023", "id" : "023", "data" : [ [ @@ -1690,10 +421,10 @@ "Blog", 12 ] - ], - "name" : "023" + ] }, { + "id" : "024", "name" : "024", "data" : [ [ @@ -1708,11 +439,11 @@ "Blog", 11 ] - ], - "id" : "024" + ] }, { "name" : "025", + "id" : "025", "data" : [ [ "Perl", @@ -1726,8 +457,7 @@ "Blog", 12 ] - ], - "id" : "025" + ] }, { "name" : "026", @@ -1749,6 +479,7 @@ }, { "name" : "027", + "id" : "027", "data" : [ [ "Perl", @@ -1762,11 +493,9 @@ "Blog", 9 ] - ], - "id" : "027" + ] }, { - "name" : "028", "data" : [ [ "Perl", @@ -1781,7 +510,8 @@ 9 ] ], - "id