diff options
| author | Mohammad S Anwar <mohammad.anwar@yahoo.com> | 2024-01-09 20:41:16 +0000 |
|---|---|---|
| committer | Mohammad S Anwar <mohammad.anwar@yahoo.com> | 2024-01-09 20:41:16 +0000 |
| commit | b7282d1ea44b6251e397269c01c7689779edc05b (patch) | |
| tree | 6f5e3bbbeda711b522e6b5e0378628f581e6241d | |
| parent | ddb204a0859b471f63c44be0179af963add50e42 (diff) | |
| download | perlweeklychallenge-club-b7282d1ea44b6251e397269c01c7689779edc05b.tar.gz perlweeklychallenge-club-b7282d1ea44b6251e397269c01c7689779edc05b.tar.bz2 perlweeklychallenge-club-b7282d1ea44b6251e397269c01c7689779edc05b.zip | |
- Added solutions by Robbie Hatley.
- Added solutions by Ulrich Rieke.
26 files changed, 2433 insertions, 2025 deletions
diff --git a/challenge-251/ulrich-rieke/cpp/ch-1.cpp b/challenge-251/ulrich-rieke/cpp/ch-1.cpp new file mode 100755 index 0000000000..75c7efe2e4 --- /dev/null +++ b/challenge-251/ulrich-rieke/cpp/ch-1.cpp @@ -0,0 +1,39 @@ +#include <iostream>
+#include <list>
+#include <string>
+
+std::list<std::string> split( const std::string & startline ,
+ const std::string & sep ) {
+ std::list<std::string> 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::list<std::string> numberlist { split( line , " " ) } ;
+ int sum = 0 ;
+ while ( numberlist.size( ) > 0 ) {
+ if ( numberlist.size( ) > 1 ) {
+ std::string concatenated { numberlist.front( ).append(
+ numberlist.back( )) } ;
+ sum += std::stoi( concatenated ) ;
+ numberlist.pop_front( ) ;
+ numberlist.pop_back( ) ;
+ }
+ else {
+ sum += std::stoi( numberlist.front( ) ) ;
+ numberlist.pop_front( ) ;
+ }
+ }
+ std::cout << sum << '\n' ;
+ return 0 ;
+}
diff --git a/challenge-251/ulrich-rieke/cpp/ch-2.cpp b/challenge-251/ulrich-rieke/cpp/ch-2.cpp new file mode 100755 index 0000000000..26da0e4d44 --- /dev/null +++ b/challenge-251/ulrich-rieke/cpp/ch-2.cpp @@ -0,0 +1,61 @@ +#include <iostream>
+#include <vector>
+#include <set>
+#include <string>
+#include <algorithm>
+#include <iterator>
+
+std::vector<std::string> split( const std::string & startline ,
+ const std::string & sep ) {
+ std::vector<std::string> 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 << "Please enter m lines of n integers, separated by blanks!\n" ;
+ std::cout << "Enter <return> to end!\n" ;
+ std::vector<std::vector<int>> matrix ;
+ int lucky = -1 ;
+ std::string line ;
+ std::getline( std::cin , line ) ;
+ std::vector<std::vector<int>> columns ;
+ while ( line.length( ) > 0 ) {
+ std::vector<int> numberline ;
+ std::vector<std::string> numberstrings( split ( line, " " ) ) ;
+ for ( auto s : numberstrings )
+ numberline.push_back( std::stoi( s ) ) ;
+ matrix.push_back( numberline ) ;
+ std::getline( std::cin , line ) ;
+ }
+ int colnumber = matrix[0].size( ) ;
+ for ( int c = 0 ; c < colnumber ; c++ ) {
+ std::vector<int> column ;
+ for ( int r = 0 ; r < matrix.size( ) ; r++ ) {
+ column.push_back( matrix[r][c] ) ;
+ }
+ columns.push_back( column ) ;
+ }
+ std::set<int> rowminima ;
+ for ( auto it = matrix.begin( ) ; it != matrix.end( ) ; ++it ) {
+ rowminima.insert( *std::min_element( it->begin( ) , it->end( ) ) ) ;
+ }
+ std::set<int> colmaxima ;
+ for ( auto it = columns.begin( ) ; it != columns.end( ) ; ++it ) {
+ colmaxima.insert( *std::max_element( it->begin( ) , it->end( ) ) ) ;
+ }
+ std::vector<int> intersect ;
+ std::set_intersection( rowminima.begin( ) ,
+ rowminima.end( ) , colmaxima.begin( ) , colmaxima.end( ) ,
+ std::inserter( intersect , intersect.begin( ) )) ;
+ if ( intersect.size( ) > 0 )
+ lucky = *intersect.begin( ) ;
+ std::cout << lucky << '\n' ;
+ return 0 ;
+}
diff --git a/challenge-251/ulrich-rieke/haskell/ch-1.hs b/challenge-251/ulrich-rieke/haskell/ch-1.hs new file mode 100755 index 0000000000..d957d173ed --- /dev/null +++ b/challenge-251/ulrich-rieke/haskell/ch-1.hs @@ -0,0 +1,19 @@ +module Challenge251
+ where
+
+solution :: String -> Int
+solution line = snd $ until ( null . fst ) step ( words line , 0 )
+ where
+ step :: ([String] , Int) -> ([String] , Int )
+ step ( wordlist , sum ) = ( if condition wordlist then init $ tail
+ wordlist else [] , if condition wordlist then sum + ( read ( head
+ wordlist ++ last wordlist ) ) else sum + ( read $ head wordlist ) )
+ where
+ condition :: [String] -> Bool
+ condition someList = length someList > 1
+
+main :: IO ( )
+main = do
+ putStrLn "Enter some integers, separated by blanks!"
+ numberline <- getLine
+ print $ solution numberline
diff --git a/challenge-251/ulrich-rieke/haskell/ch-2.hs b/challenge-251/ulrich-rieke/haskell/ch-2.hs new file mode 100755 index 0000000000..6fdada86a4 --- /dev/null +++ b/challenge-251/ulrich-rieke/haskell/ch-2.hs @@ -0,0 +1,32 @@ +module Challenge251_2
+ where
+import Data.List ( transpose , intersect )
+
+solution :: [[Int]] -> Int
+solution matrix = if null intersection then -1 else head intersection
+ where
+ minima :: [Int]
+ minima = map minimum matrix
+ maxima :: [Int]
+ maxima = map maximum $ transpose matrix
+ intersection :: [Int]
+ intersection = intersect minima maxima
+
+getMultipleLines :: Int -> IO [String]
+getMultipleLines n
+ |n <= 0 = return []
+ |otherwise = do
+ x <- getLine
+ xs <- getMultipleLines ( n - 1 )
+ let ret = (x:xs)
+ return ret
+
+main :: IO ( )
+main = do
+ putStrLn "Enter m lines of n integers separated by blanks!"
+ putStrLn "How many lines do you want to enter?" ;
+ number <- getLine
+ numberstrings <- getMultipleLines $ read number
+ let matrix = map (\s -> map read $ words s ) numberstrings
+ print $ solution matrix
+
diff --git a/challenge-251/ulrich-rieke/perl/ch-1.pl b/challenge-251/ulrich-rieke/perl/ch-1.pl new file mode 100755 index 0000000000..f7346f0572 --- /dev/null +++ b/challenge-251/ulrich-rieke/perl/ch-1.pl @@ -0,0 +1,24 @@ +#!/usr/bin/perl ;
+use strict ;
+use warnings ;
+use feature 'say' ;
+
+say "Enter some integers, separated by blanks!" ;
+my $line = <STDIN> ;
+chomp $line ;
+my @numbers = split( /\s/ , $line ) ;
+my $sum = 0 ;
+while ( @numbers ) {
+ if ( scalar( @numbers ) > 1 ) {
+ my $concat = ($numbers[0] . $numbers[-1]) + 0 ;
+ $sum += $concat ;
+ shift @numbers ;
+ pop @numbers ;
+ }
+ else {
+ $sum += $numbers[0] ;
+ shift @numbers ;
+ }
+}
+say $sum ;
+
diff --git a/challenge-251/ulrich-rieke/perl/ch-2.pl b/challenge-251/ulrich-rieke/perl/ch-2.pl new file mode 100755 index 0000000000..ee1e380eb4 --- /dev/null +++ b/challenge-251/ulrich-rieke/perl/ch-2.pl @@ -0,0 +1,45 @@ +#!/usr/bin/perl ;
+use strict ;
+use warnings ;
+use feature 'say' ;
+use List::Util qw ( min max ) ;
+
+say "Enter m integers on n lines, separated by blanks!" ;
+say "Enter <return> to end!" ;
+my $lucky = -1 ;
+my @matrix ;
+my @columns ;
+my $line = <STDIN> ;
+chomp $line ;
+while ( $line ) {
+ my @numbers = split( /\s/ , $line ) ;
+ push( @matrix , \@numbers ) ;
+ $line = <STDIN> ;
+ chomp $line ;
+}
+my $colnumbers = scalar( @{$matrix[0]} ) ;
+for my $c (0..$colnumbers - 1 ) {
+ my @column ;
+ for my $row ( @matrix ) {
+ push @column , $row->[ $c ] ;
+ }
+ push @columns , \@column ;
+}
+my %rowminima ;
+for my $row ( @matrix ) {
+ my $mini = min( @$row ) ;
+ $rowminima{ $mini }++ ;
+}
+my %colmaxima ;
+for my $col ( @columns ) {
+ my $maxi = max( @$col ) ;
+ $colmaxima{ $maxi }++ ;
+}
+my @intersection = grep { exists( $colmaxima{ $_ } ) } keys %rowminima ;
+if ( @intersection ) {
+ $lucky = $intersection[ 0 ] ;
+}
+say $lucky ;
+
+
+
diff --git a/challenge-251/ulrich-rieke/raku/ch-1.raku b/challenge-251/ulrich-rieke/raku/ch-1.raku new file mode 100755 index 0000000000..f10fb1f7b1 --- /dev/null +++ b/challenge-251/ulrich-rieke/raku/ch-1.raku @@ -0,0 +1,19 @@ +use v6 ;
+
+say "Enter some integers, separated by blanks!" ;
+my $line = $*IN.get ;
+my @numbers = $line.words ;
+my $sum = 0 ;
+while ( @numbers.elems > 0 ) {
+ if ( @numbers.elems > 1 ) {
+ my $concatenated = (@numbers[0] ~ @numbers[*-1]).Int ;
+ $sum += $concatenated ;
+ @numbers.shift ;
+ @numbers.pop ;
+ }
+ else {
+ my $first = @numbers.pop.Int ;
+ $sum += $first ;
+ }
+}
+say $sum ;
diff --git a/challenge-251/ulrich-rieke/raku/ch-2.raku b/challenge-251/ulrich-rieke/raku/ch-2.raku new file mode 100755 index 0000000000..179cb0f466 --- /dev/null +++ b/challenge-251/ulrich-rieke/raku/ch-2.raku @@ -0,0 +1,36 @@ +use v6 ;
+
+say "Enter m lines of n integers, separated by blanks on every line!" ;
+say "Enter <return> to end!" ;
+my @matrix ;
+my $lucky = -1 ;
+my $line = $*IN.get ;
+while ( $line ) {
+ my @numbers = $line.words.map( {.Int} ) ;
+ @matrix.push( @numbers ) ;
+ $line = $*IN.get ;
+}
+my @rowminima ;
+my @colmaxima ;
+my @columns ;
+my $rownumber = @matrix.elems ;
+my $colnumber = @matrix[0].elems ;
+for (0..$colnumber - 1 ) -> $c {
+ my @column ;
+ for (0..$rownumber - 1 ) -> $r {
+ @column.push( @matrix[$r][$c] ) ;
+ }
+ @columns.push( @column ) ;
+}
+for @matrix -> @row {
+ @rowminima.push( @row.min ) ;
+}
+for @columns -> @column {
+ @colmaxima.push( @column.max ) ;
+}
+my $common = @rowminima.Set (&) @colmaxima.Set ;
+if $common.elems > 0 {
+ $lucky = $common.keys ;
+}
+say $lucky ;
+
diff --git a/challenge-251/ulrich-rieke/rust/ch-1.rs b/challenge-251/ulrich-rieke/rust/ch-1.rs new file mode 100755 index 0000000000..cea6494fa2 --- /dev/null +++ b/challenge-251/ulrich-rieke/rust/ch-1.rs @@ -0,0 +1,37 @@ +use std::io ; +use std::collections::VecDeque ; + +fn concatenate_nums( numbers : &VecDeque<&str> ) -> i32 { + let mut concatenated : String = String::new( ) ; + concatenated.push_str( numbers[ 0 ] ) ; + let len = numbers.len( ) ; + concatenated.push_str( numbers[ len - 1 ] ) ; + let transformed = concatenated.as_str( ) ; + transformed.parse::<i32>( ).unwrap( ) +} + +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 mut numberstrings : VecDeque<&str> = entered_line + .split_whitespace( ).map( + | s | s.trim( ) ).collect( ) ; + let mut sum : i32 = 0 ; + while numberstrings.len( ) > 0 { + if numberstrings.len( ) > 1 { + sum += concatenate_nums( &numberstrings ) ; + numberstrings.pop_front( ).unwrap( ) ; + numberstrings.pop_back( ).unwrap( ) ; + } + else { + let first : i32 = match numberstrings.pop_front( ) { + Some(string) => string.parse::<i32>( ).unwrap( ) , + None => 0 + } ; + sum += first ; + } + } + println!("{}" , sum ) ; +} diff --git a/challenge-251/ulrich-rieke/rust/ch-2.rs b/challenge-251/ulrich-rieke/rust/ch-2.rs new file mode 100755 index 0000000000..3b24288312 --- /dev/null +++ b/challenge-251/ulrich-rieke/rust/ch-2.rs @@ -0,0 +1,58 @@ +use std::io ; +use std::io::BufRead ; +use std::collections::HashSet ; + +fn main() -> io::Result<()> { + println!("Enter a matrix of m x n integers, <return> to end!"); + let mut lines = io::stdin( ).lock( ).lines( ) ; + let mut all_input : String = String::new( ) ; + while let Some( line ) = lines.next( ) { + let last_input = line.unwrap( ) ; + if last_input.len( ) == 0 { + break ; + } + else { + all_input.push_str( "\n" ) ; + } + all_input.push_str( &last_input ) ; + } + let rows : Vec<&str> = all_input.split("\n").collect( ) ; + let mut matrix : Vec<Vec<i32>> = Vec::new( ) ; + for r in &rows { + if r.len( ) > 0 { + let rownumbers : Vec<i32> = r.split_whitespace( ).map( | s | + s.trim( ).parse::<i32>( ).unwrap( ) ).collect( ) ; + matrix.push( rownumbers ) ; + } + } + let colnumber : usize = matrix[1].len( ) ; + let mut all_columns : Vec<Vec<i32>> = Vec::new( ) ; + for c in 0..colnumber { + let mut column : Vec<i32> = Vec::new( ) ; + for r in &matrix { + column.push( r[ c ] ) ; + } + all_columns.push( column ) ; + } + let mut rowminima : HashSet<i32> = HashSet::new( ) ; + for r in &matrix { + let rowmin : i32 = *r.iter( ).min( ).unwrap( ) ; + rowminima.insert( rowmin ) ; + } + let mut colmaxima : HashSet<i32> = HashSet::new( ) ; + for col in &all_columns { + let colmax : i32 = *col.iter( ).max( ).unwrap( ) ; + colmaxima.insert( colmax ) ; + } + let mut intersection : HashSet<_> = rowminima.intersection( &colmaxima ). + collect( ) ; + if intersection.is_empty( ) { + println!("-1") ; + } + else { + for i in intersection.drain( ) { + println!("{}" , i ) ; + } + } + Ok(()) +} diff --git a/stats/pwc-current.json b/stats/pwc-current.json index 4a35b7d705..215a28ae19 100644 --- a/stats/pwc-current.json +++ b/stats/pwc-current.json @@ -1,78 +1,32 @@ { - "subtitle" : { - "text" : "[Champions: 11] Last updated at 2024-01-08 19:11:43 GMT" + "xAxis" : { + "type" : "category" }, "tooltip" : { - "headerFormat" : "<span style='font-size:11px'>{series.name}</span><br/>", "pointFormat" : "<span style='color:{point.color}'>{point.name}</span>: <b>{point.y:f}</b><br/>", + "headerFormat" : "<span style='font-size:11px'>{series.name}</span><br/>", "followPointer" : 1 }, - "series" : [ - { - "name" : "The Weekly Challenge - 251", - "data" : [ - { - "drilldown" : "Dave Jacoby", - "name" : "Dave Jacoby", - "y" : 3 - }, - { - "y" : 2, - "name" : "David Ferrone", - "drilldown" : "David Ferrone" - }, - { - "name" : "Laurent Rosenfeld", - "y" : 3, - "drilldown" : "Laurent Rosenfeld" - }, - { - "drilldown" : "Luca Ferrari", - "name" : "Luca Ferrari", - "y" : 10 - }, - { - "y" : 2, - "name" : "Mark Anderson", - "drilldown" : "Mark Anderson" - }, - { - "y" : 2, - "name" : "Niels van Dijke", - "drilldown" : "Niels van Dijke" - }, - { - "drilldown" : "Peter Campbell Smith", - "name" : "Peter Campbell Smith", - "y" : 3 - }, - { - "drilldown" : "Peter Meszaros", - "name" : "Peter Meszaros", - "y" : 2 - }, - { - "y" : 2, - "name" : "Simon Proctor", - "drilldown" : "Simon Proctor" - }, - { - "drilldown" : "Thomas Kohler", - "y" : 4, - "name" : "Thomas Kohler" - }, - { - "name" : "W. Luis Mochan", - "y" : 3, - "drilldown" : "W. Luis Mochan" - } - ], - "colorByPoint" : 1 + "legend" : { + "enabled" : 0 + }, + "plotOptions" : { + "series" : { + "dataLabels" : { + "enabled" : 1, + "format" : "{point.y}" + }, + "borderWidth" : 0 } - ], + }, + "subtitle" : { + "text" : "[Champions: 13] Last updated at 2024-01-09 20:37:41 GMT" + }, "drilldown" : { "series" : [ { + "id" : "Dave Jacoby", + "name" : "Dave Jacoby", "data" : [ [ "Perl", @@ -82,23 +36,20 @@ "Blog", 1 ] - ], - "name" : "Dave Jacoby", - "id" : "Dave Jacoby" + ] }, { + "name" : "David Ferrone", "data" : [ [ "Perl", 2 ] ], - "name" : "David Ferrone", "id" : "David Ferrone" }, { "id" : "Laurent Rosenfeld", - "name" : "Laurent Rosenfeld", "data" : [ [ "Perl", @@ -112,11 +63,10 @@ "Blog", 1 ] - ] + ], + "name" : "Laurent Rosenfeld" }, { - "id" : "Luca Ferrari", - "name" : "Luca Ferrari", "data" : [ [ "Raku", @@ -126,17 +76,19 @@ "Blog", 8 ] - ] + ], + "name" : "Luca Ferrari", + "id" : "Luca Ferrari" }, { + "id" : "Mark Anderson", + "name" : "Mark Anderson", "data" : [ [ "Raku", 2 ] - ], - "id" : "Mark Anderson", - "name" : "Mark Anderson" + ] }, { "data" : [ @@ -163,14 +115,28 @@ ] }, { - "id" : "Peter Meszaros", + "data" : [ + [ + "Perl", + 2 + ] + ], "name" : "Peter Meszaros", + "id" : "Peter Meszaros" + }, + { "data" : [ [ "Perl", 2 + ], + [ + "Blog", + 1 ] - ] + ], + "name" : "Robbie Hatley", + "id" : "Robbie Hatley" }, { "id" : "Simon Proctor", @@ -183,6 +149,7 @@ ] }, { + "name" : "Thomas Kohler", "data" : [ [ "Perl", @@ -193,12 +160,25 @@ 2 ] ], - "name" : "Thomas Kohler", "id" : "Thomas Kohler" }, { - "name" : "W. Luis Mochan", + "data" : [ + [ + "Perl", + 2 + ], + [ + "Raku", + 2 + ] + ], + "name" : "Ulrich Rieke", + "id" : "Ulrich Rieke" + }, + { "id" : "W. Luis Mochan", + "name" : "W. Luis Mochan", "data" : [ [ "Perl", @@ -212,9 +192,82 @@ } ] }, - "legend" : { - "enabled" : 0 + "chart" : { + "type" : "column" }, + "series" : [ + { + "name" : "The Weekly Challenge - 251", + "data" : [ + { + "name" : "Dave Jacoby", + "drilldown" : "Dave Jacoby", + "y" : 3 + }, + { + "y" : 2, + "drilldown" : "David Ferrone", + "name" : "David Ferrone" + }, + { + "drilldown" : "Laurent Rosenfeld", + "name" : "Laurent Rosenfeld", + "y" : 3 + }, + { + "y" : 10, + "name" : "Luca Ferrari", + "drilldown" : "Luca Ferrari" + }, + { + "y" : 2, + "drilldown" : "Mark Anderson", + "name" : "Mark Anderson" + }, + { + "y" : 2, + "drilldown" : "Niels van Dijke", + "name" : "Niels van Dijke" + }, + { + "y" : 3, + "drilldown" : "Peter Campbell Smith", + "name" : "Peter Campbell Smith" + }, + { + "name" : "Peter Meszaros", + "drilldown" : "Peter Meszaros", + "y" : 2 + }, + { + "y" : 3, + "drilldown" : "Robbie Hatley", + "name" : "Robbie Hatley" + }, + { + "y" : 2, + "name" : "Simon Proctor", + "drilldown" : "Simon Proctor" + }, + { + "y" : 4, + "drilldown" : "Thomas Kohler", + "name" : "Thomas Kohler" + }, + { + "name" : "Ulrich Rieke", + "drilldown" : "Ulrich Rieke", + "y" : 4 + }, + { + "y" : 3, + "name" : "W. Luis Mochan", + "drilldown" : "W. Luis Mochan" + } + ], + "colorByPoint" : 1 + } + ], "title" : { "text" : "The Weekly Challenge - 251" }, @@ -222,20 +275,5 @@ "title" : { "text" : "Total Solutions" } - }, - "plotOptions" : { - "series" : { - "borderWidth" : 0, - "dataLabels" : { - "format" : "{point.y}", - "enabled" : 1 - } - } - }, - "chart" : { - "type" : "column" - }, - "xAxis" : { - "type" : "category" } } diff --git a/stats/pwc-language-breakdown-summary.json b/stats/pwc-language-breakdown-summary.json index cedaf23ce7..8d04b92337 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-09 20:37:41 GMT" + }, "legend" : { "enabled" : "false" }, + "tooltip" : { + "pointFormat" : "<b>{point.y:.0f}</b>" + }, + "xAxis" : { + "type" : "category", + "labels" : { + "style" : { + "fontFamily" : "Verdana, sans-serif", + "fontSize" : "13px" + } + } + }, + "yAxis" : { + "title" : { + "text" : null + }, + "min" : 0 + }, + "title" : { + "text" : "The Weekly Challenge Contributions [2019 - 2024]" + }, "series" : [ { - "name" : "Contributions", + "dataLabels" : { + "y" : 10, + "format" : "{point.y:.0f}", + "enabled" : "true", + "style" : { + "fontSize" : "13px", + "fontFamily" : "Verdana, sans-serif" + }, + "align" : "right", + "color" : "#FFFFFF", + "rotation" : -90 + }, "data" : [ [ "Blog", - 4395 + 4396 ], [ "Perl", - 12924 + 12928 ], [ "Raku", - 7453 + 7455 ] ], - "dataLabels" : { - "style" : { - "fontFamily" : "Verdana, sans-serif", - "fontSize" : "13px" - }, - "rotation" : -90, - "align" : "right", - "enabled" : "true", - "color" : "#FFFFFF", - "y" : 10, - "format" : "{point.y:.0f}" - } + "name" : "Contributions" } ], - "tooltip" : { - "pointFormat" : "<b>{point.y:.0f}</b>" - }, - "subtitle" : { - "text" : "Last updated at 2024-01-08 19:11:43 GMT" - }, - "xAxis" : { - "labels" : { - "style" : { - "fontFamily" : "Verdana, sans-serif", - "fontSize" : "13px" - } - }, - "type" : "category" - }, "chart" : { "type" : "column" - }, - "title" : { - "text" : "The Weekly Challenge Contributions [2019 - 2024]" - }, - "yAxis" : { - "title" : { - "text" : null - }, - "min" : 0 } } diff --git a/stats/pwc-language-breakdown.json b/stats/pwc-language-breakdown.json index 2ed179f24d..8d56a43139 100644 --- a/stats/pwc-language-breakdown.json +++ b/stats/pwc-language-breakdown.json @@ -1,16 +1,7 @@ { - "tooltip" : { - "headerFormat" : "<span style=\"font-size:11px\"></span>", - "pointFormat" : "<span style=\"color:{point.color}\">Challenge {point.name}</span>: <b>{point.y:f}</b><br/>", - "followPointer" : "true" - }, - "subtitle" : { - "text" : "Click the columns to drilldown the language breakdown. Last updated at 2024-01-08 19:11:43 GMT" - }, "drilldown" : { "series" : [ { - "id" : "001", "name" : "001", "data" : [ [ @@ -25,10 +16,10 @@ "Blog", 12 ] - ] + ], + "id" : "001" }, { - "id" : "002", "name" : "002", "data" : [ |
