aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--challenge-146/ulrich-rieke/cpp/ch-1.cpp23
-rw-r--r--challenge-146/ulrich-rieke/cpp/ch-2.cpp70
-rw-r--r--challenge-146/ulrich-rieke/haskell/ch-1.hs14
-rw-r--r--challenge-146/ulrich-rieke/haskell/ch-2.hs47
-rw-r--r--challenge-146/ulrich-rieke/perl/ch-1.pl23
-rw-r--r--challenge-146/ulrich-rieke/perl/ch-2.pl81
-rw-r--r--challenge-146/ulrich-rieke/raku/ch-1.raku11
-rw-r--r--challenge-146/ulrich-rieke/raku/ch-2.raku93
-rw-r--r--stats/pwc-current.json305
-rw-r--r--stats/pwc-language-breakdown-summary.json64
-rw-r--r--stats/pwc-language-breakdown.json2050
-rw-r--r--stats/pwc-leaders.json390
-rw-r--r--stats/pwc-summary-1-30.json108
-rw-r--r--stats/pwc-summary-121-150.json36
-rw-r--r--stats/pwc-summary-151-180.json96
-rw-r--r--stats/pwc-summary-181-210.json44
-rw-r--r--stats/pwc-summary-211-240.json108
-rw-r--r--stats/pwc-summary-241-270.json42
-rw-r--r--stats/pwc-summary-31-60.json46
-rw-r--r--stats/pwc-summary-61-90.json104
-rw-r--r--stats/pwc-summary-91-120.json46
-rw-r--r--stats/pwc-summary.json530
22 files changed, 2356 insertions, 1975 deletions
diff --git a/challenge-146/ulrich-rieke/cpp/ch-1.cpp b/challenge-146/ulrich-rieke/cpp/ch-1.cpp
new file mode 100644
index 0000000000..415867763f
--- /dev/null
+++ b/challenge-146/ulrich-rieke/cpp/ch-1.cpp
@@ -0,0 +1,23 @@
+#include <iostream>
+#include <cmath>
+
+bool isPrime( int number ) {
+ int stop = std::sqrt( static_cast<double>( number ) ) ;
+ for ( int i = 2 ; i <= stop ; ++i )
+ if ( number % i == 0 )
+ return false ;
+ return true ;
+}
+
+int main( ) {
+ int current = 1 ;
+ int numberOfPrimes = 0 ;
+ while ( numberOfPrimes != 10001 ) {
+ current++ ;
+ if ( isPrime( current ) ) {
+ numberOfPrimes++ ;
+ }
+ }
+ std::cout << current << std::endl ;
+ return 0 ;
+}
diff --git a/challenge-146/ulrich-rieke/cpp/ch-2.cpp b/challenge-146/ulrich-rieke/cpp/ch-2.cpp
new file mode 100644
index 0000000000..e9d58c88d8
--- /dev/null
+++ b/challenge-146/ulrich-rieke/cpp/ch-2.cpp
@@ -0,0 +1,70 @@
+#include <iostream>
+#include <string>
+#include <algorithm>
+#include <utility>
+
+std::pair<int,int> createParent( int dividend , int divisor , int bdividend ,
+ int bdivisor ) {
+ std::pair<int , int> node ;
+ double product = ( (static_cast<double>( dividend ) /
+ static_cast<double>( divisor )) *
+ ( static_cast<double>( bdividend ) / static_cast<double>(bdivisor))) ;
+ int firstMin = std::min( dividend, divisor ) ;
+ int secondMin = std::min( bdividend, bdivisor ) ;
+ if ( product > 1.0 ) {
+ node = std::make_pair( std::max( firstMin , secondMin ) ,
+ std::min( firstMin, secondMin ) ) ;
+ }
+ if ( product < 1.0 ) {
+ node = std::make_pair( std::min( firstMin , secondMin ) ,
+ std::max( firstMin, secondMin ) ) ;
+ }
+ if ( product == 1.0 )
+ node = std::make_pair( 1 , 1 ) ;
+ return node ;
+}
+
+std::pair<int, int> createBrother( int dividend , int divisor ) {
+ int maximum = std::max( dividend , divisor ) ;
+ int minimum = std::min( dividend, divisor ) ;
+ if ( maximum == dividend ) {
+ return std::make_pair( maximum - minimum , maximum ) ;
+ }
+ else {
+ return std::make_pair( maximum , maximum - minimum ) ;
+ }
+}
+
+int main( ) {
+ std::cout << "Enter a fraction as dividend/divisor!\n" ;
+ std::string input ;
+ std::cin >> input ;
+ std::string::size_type found = input.find( "/" ) ;
+ while ( found == std::string::npos ) {
+ std::cout << "Please enter a fraction as dividend/divisor!\n" ;
+ std::cin >> input ;
+ found = input.find( "/" ) ;
+ }
+ int howmany = static_cast<int>( found ) ;
+ int dividend = std::stoi( input.substr( 0 , howmany ) ) ;
+ int divisor = std::stoi( input.substr( howmany + 1 ) ) ;
+ if ( dividend == 1 && divisor == 1 )
+ std::cout << "parent = and grandparent = " << std::endl ;
+ else {
+ double fraction = static_cast<double>( dividend ) / static_cast<double>( divisor) ;
+ if ( fraction == 0.5 || fraction == 2.0 )
+ std::cout << "parent = 1/1 and grandparent = !" << std::endl ;
+ else {
+ std::pair<int , int> brother = createBrother( dividend , divisor ) ;
+ std::pair<int , int> parent = createParent( dividend, divisor , brother.first ,
+ brother.second ) ;
+ std::pair<int , int> uncle = createBrother( parent.first , parent.second ) ;
+ std::pair<int , int> grandParent = createParent( parent.first , parent.second ,
+ uncle.first , uncle.second ) ;
+ std::cout << "parent = " << parent.first << '/' << parent.second ;
+ std::cout << " and grandparent = " << grandParent.first << '/' <<
+ grandParent.second << std::endl ;
+ }
+ }
+ return 0 ;
+}
diff --git a/challenge-146/ulrich-rieke/haskell/ch-1.hs b/challenge-146/ulrich-rieke/haskell/ch-1.hs
new file mode 100644
index 0000000000..d46c5332dd
--- /dev/null
+++ b/challenge-146/ulrich-rieke/haskell/ch-1.hs
@@ -0,0 +1,14 @@
+module Challenge146
+ where
+
+isPrime :: Int -> Bool
+isPrime n
+ |n == 2 = True
+ |n == 1 = False
+ |otherwise = null $ filter (\i -> mod n i == 0 ) [2 .. root]
+ where
+ root :: Int
+ root = floor $ sqrt $ fromIntegral n
+
+solution :: Int
+solution = head $ drop 10000 $ filter isPrime [2 , 3 ..]
diff --git a/challenge-146/ulrich-rieke/haskell/ch-2.hs b/challenge-146/ulrich-rieke/haskell/ch-2.hs
new file mode 100644
index 0000000000..0e55eafa7f
--- /dev/null
+++ b/challenge-146/ulrich-rieke/haskell/ch-2.hs
@@ -0,0 +1,47 @@
+module Challenge146_2
+ where
+import Data.List.Split ( splitOn )
+
+createBrother :: (Int , Int ) -> ( Int , Int )
+createBrother ( dividend , divisor )
+ |maxi == dividend = (maxi - mini , maxi)
+ |mini == dividend = ( maxi , maxi - mini )
+ where
+ maxi :: Int
+ maxi = maximum [ dividend , divisor]
+ mini :: Int
+ mini = minimum [ dividend , divisor ]
+
+createParent :: (Int , Int) -> (Int , Int) -> (Int , Int)
+createParent ( dividend , divisor ) ( bdividend , bdivisor )
+ |product > 1.0 = ( maximum [firstMin , secondMin] , minimum [firstMin , secondMin])
+ |product < 1.0 = ( minimum [firstMin , secondMin] , maximum [firstMin , secondMin])
+ |product == 1.0 = ( 1 , 1 )
+ where
+ product :: Double
+ product = (fromIntegral dividend / fromIntegral divisor) * ( fromIntegral
+ bdividend / fromIntegral bdivisor )
+ firstMin :: Int
+ firstMin = minimum [ dividend , divisor ]
+ secondMin :: Int
+ secondMin = minimum [bdividend , bdivisor]
+
+solution :: String -> String
+solution input
+ |input == "1/2" = "parent = 1/1 and grandparent ="
+ |input == "2/1" = "parent = 1/1 and grandparent ="
+ |otherwise = "parent = " ++ (show $ fst parent) ++ "/" ++ ( show $ snd parent )
+ ++ " and grandparent = " ++ ( show $ fst grandparent ) ++ "/" ++
+ (show $ snd grandparent)
+ where
+ fracNumbers :: [Int]
+ fracNumbers = map read $ splitOn "/" input
+ brother :: (Int , Int)
+ brother = createBrother ( head fracNumbers , last fracNumbers )
+ parent :: (Int , Int )
+ parent = createParent ( head fracNumbers , last fracNumbers ) ( fst brother ,
+ snd brother )
+ uncle :: (Int , Int)
+ uncle = createBrother (fst parent , snd parent)
+ grandparent :: ( Int , Int )
+ grandparent = createParent (fst parent , snd parent) (fst uncle , snd uncle)
diff --git a/challenge-146/ulrich-rieke/perl/ch-1.pl b/challenge-146/ulrich-rieke/perl/ch-1.pl
new file mode 100644
index 0000000000..90c3bcce81
--- /dev/null
+++ b/challenge-146/ulrich-rieke/perl/ch-1.pl
@@ -0,0 +1,23 @@
+#!/usr/bin/perl ;
+use strict ;
+use warnings ;
+use feature 'say' ;
+
+sub isPrime {
+ my $number = shift ;
+ return 1 if ( $number == 2 ) ;
+ for my $i ( 2..int( $number / 2 ) ) {
+ return 0 if $number % $i == 0 ;
+ }
+ return 1 ;
+}
+
+my $current = 1 ;
+my $num_of_primes = 0 ;
+do {
+ $current++ ;
+ if ( isPrime( $current ) ) {
+ $num_of_primes++ ;
+ }
+} while ( $num_of_primes != 10001 ) ;
+say $current ;
diff --git a/challenge-146/ulrich-rieke/perl/ch-2.pl b/challenge-146/ulrich-rieke/perl/ch-2.pl
new file mode 100644
index 0000000000..49d13f5d36
--- /dev/null
+++ b/challenge-146/ulrich-rieke/perl/ch-2.pl
@@ -0,0 +1,81 @@
+#!/usr/bin/perl ;
+use strict ;
+use warnings ;
+use feature 'say' ;
+use List::Util qw ( min max ) ;
+
+sub createParent {
+ my $dividend = shift ;
+ my $divisor = shift ;
+ my $bdividend = shift ;
+ my $bdivisor = shift ;
+ my $product = ( $dividend / $divisor ) * ( $bdividend / $bdivisor ) ;
+ my $firstMin = min( $dividend , $divisor ) ;
+ my $secondMin = min( $bdividend , $bdivisor ) ;
+ if ( $product > 1 ) {
+ return max( $firstMin , $secondMin ) . '/' .
+ min( $firstMin, $secondMin ) ;
+ }
+ if ( $product < 1 ) {
+ return min( $firstMin , $secondMin ) . '/' .
+ max( $firstMin , $secondMin ) ;
+ }
+ if ( $product == 1 ) {
+ return "1/1" ;
+ }
+}
+
+sub createBrother {
+ my @brotherresult ;
+ my $brotherDividend ;
+ my $brotherDivisor ;
+ my $dividend = shift ;
+ my $divisor = shift ;
+ my $maximum = max( $dividend , $divisor ) ;
+ my $minimum = min( $dividend , $divisor ) ;
+ if ( $maximum == $dividend ) {
+ $brotherDivisor = $maximum ;
+ $brotherDividend = $maximum - $minimum ;
+ }
+ else {
+ $brotherDividend = $maximum ;
+ $brotherDivisor = $maximum - $minimum ;
+ }
+ push @brotherresult , $brotherDividend, $brotherDivisor ;
+ return @brotherresult ;
+}
+
+say "Enter a fraction as dividend / divisor!" ;
+my $member = <STDIN> ;
+chomp $member ;
+while ( $member !~ /\A(\d+)\s*\/\s*(\d+)\z/ ) {
+ say "Please enter a fraction as dividend / divisor!" ;
+ $member = <STDIN> ;
+ chomp $member ;
+}
+if ( $member =~ /\A(\d+)\s*\/\s*(\d+)\z/ ) {
+ my $dividend = $1 ;
+ my $divisor = $2 ;
+ if ( $dividend eq '1' && $divisor eq '1' ) {
+ say "parent = and grandparent = " ;
+ }
+ elsif ( $dividend / $divisor == 0.5 || $dividend / $divisor == 2 ) {
+ say "parent = 1/1 and grandparent = !" ;
+ }
+ else {
+ my @brotherFraction = createBrother( $dividend , $divisor ) ;
+ my $parent = createParent( $dividend , $divisor , $brotherFraction[ 0 ] ,
+ $brotherFraction[1] ) ;
+ my $grandParent ;
+ if ( $parent =~ /\A(\d+)\/(\d+)\z/ ) {
+ my @uncle = createBrother( $1 , $2 ) ;
+ $grandParent = createParent( $1 , $2, $uncle[ 0 ] , $uncle[ 1 ] ) ;
+ }
+ if ( $parent ) {
+ print "parent = $parent" ;
+ }
+ if ( $grandParent ) {
+ say " and grandparent = $grandParent" ;
+ }
+ }
+}
diff --git a/challenge-146/ulrich-rieke/raku/ch-1.raku b/challenge-146/ulrich-rieke/raku/ch-1.raku
new file mode 100644
index 0000000000..e2080cf456
--- /dev/null
+++ b/challenge-146/ulrich-rieke/raku/ch-1.raku
@@ -0,0 +1,11 @@
+use v6 ;
+
+my $current = 1 ;
+my $number_of_primes = 0 ;
+repeat {
+ $current++ ;
+ if ( $current.is-prime ) {
+ $number_of_primes++ ;
+ }
+} until ( $number_of_primes == 10001 ) ;
+say $current ;
diff --git a/challenge-146/ulrich-rieke/raku/ch-2.raku b/challenge-146/ulrich-rieke/raku/ch-2.raku
new file mode 100644
index 0000000000..5d7a3c23be
--- /dev/null
+++ b/challenge-146/ulrich-rieke/raku/ch-2.raku
@@ -0,0 +1,93 @@
+use v6 ;
+
+sub myMin( $a , $b ) {
+ if ( $a < $b ) {
+ return $a ;
+ }
+ else {
+ return $b ;
+ }
+}
+
+sub myMax( $a , $b ) {
+ if ( $a > $b ) {
+ return $a ;
+ }
+ else {
+ return $b ;
+ }
+}
+
+sub createParent( $dividend is copy, $divisor is copy , $bdividend is copy ,
+ $bdivisor is copy ) {
+ my $product = ( $dividend / $divisor ) * ( $bdividend / $bdivisor ) ;
+ my $firstMin = myMin( $dividend, $divisor ) ;
+ my $secondMin = myMin( $bdividend, $bdivisor ) ;
+ if ( $product > 1 ) {
+ return myMax( $firstMin, $secondMin ) ~ "/" ~ myMin( $firstMin ,
+ $secondMin) ;
+ }
+ if ( $product < 1 ) {
+ return myMin( $firstMin, $secondMin) ~ "/" ~ myMax( $firstMin ,
+ $secondMin ) ;
+ }
+ if ( $product == 1 ) {
+ return "1/1" ;
+ }
+}
+
+sub createBrother( $dividend is copy, $divisor is copy ) {
+ my @result ;
+ my $maximum ;
+ my $minimum ;
+ if ( $dividend > $divisor ) {
+ $maximum = $dividend ;
+ $minimum = $divisor ;
+ }
+ else {
+ $maximum = $divisor ;
+ $minimum = $dividend ;
+ }
+ my $brotherDividend ;
+ my $brotherDivisor ;
+ if ( $maximum == $dividend ) {
+ $brotherDivisor = $maximum ;
+ $brotherDividend = $maximum - $minimum ;
+ }
+ else {
+ $brotherDividend = $maximum ;
+ $brotherDivisor = $maximum - $minimum ;
+ }
+ @result.push( $brotherDividend , $brotherDivisor ) ;
+ return @result ;
+}
+
+say "Enter a member as as fraction: 'dividend / divisor' !" ;
+my $member = $*IN.get ;
+while ( $member !~~ /^(\d+) \s* '/' \s* (\d+) $/ ) {
+ say "Please enter a fraction as 'dividend / divisor' !" ;
+ $member = $*IN.get ;
+}
+my $dividend = +$0 ;
+my $divisor = +$1 ;
+if ( $dividend == 1 && $divisor == 1 ) {
+ say "parent = " ~ " " ~ " and grandparent =" ~ " " ;
+}
+elsif ( $dividend / $divisor == 0.5 || $dividend / $divisor == 2 ) {
+ say "parent = 1/1 and grandparent = !" ;
+}
+else {
+ my @brotherFraction = createBrother( $dividend , $divisor ) ;
+ my $parent = createParent( $dividend, $divisor , |@brotherFraction ) ;
+ my $grandparent ;
+ if ( $parent ~~ /^(\d+) '/' (\d+) $/ ) {
+ my @uncle = createBrother( +$0 , +$1 ) ;
+ $grandparent = createParent( +$0 , +$1 , |@uncle ) ;
+ }
+ if ( $parent ) {
+ print "parent = $parent " ;
+ }
+ if ( $grandparent ) {
+ say " and grandparent = $grandparent" ;
+ }
+}
diff --git a/stats/pwc-current.json b/stats/pwc-current.json
index 76aec9f364..b852e1b840 100644
--- a/stats/pwc-current.json
+++ b/stats/pwc-current.json
@@ -2,6 +2,127 @@
"chart" : {
"type" : "column"
},
+ "plotOptions" : {
+ "series" : {
+ "dataLabels" : {
+ "format" : "{point.y}",
+ "enabled" : 1
+ },
+ "borderWidth" : 0
+ }
+ },
+ "tooltip" : {
+ "pointFormat" : "<span style='color:{point.color}'>{point.name}</span>: <b>{point.y:f}</b><br/>",
+ "followPointer" : 1,
+ "headerFormat" : "<span style='font-size:11px'>{series.name}</span><br/>"
+ },
+ "series" : [
+ {
+ "colorByPoint" : 1,
+ "data" : [
+ {
+ "y" : 4,
+ "name" : "Abigail",
+ "drilldown" : "Abigail"
+ },
+ {
+ "drilldown" : "Andrew Shitov",
+ "name" : "Andrew Shitov",
+ "y" : 1
+ },
+ {
+ "y" : 2,
+ "drilldown" : "Andrezgz",
+ "name" : "Andrezgz"
+ },
+ {
+ "name" : "Dave Jacoby",
+ "drilldown" : "Dave Jacoby",
+ "y" : 3
+ },
+ {
+ "y" : 2,
+ "drilldown" : "E. Choroba",
+ "name" : "E. Choroba"
+ },
+ {
+ "y" : 2,
+ "drilldown" : "Feng Chang",
+ "name" : "Feng Chang"
+ },
+ {
+ "y" : 6,
+ "name" : "Flavio Poletti",
+ "drilldown" : "Flavio Poletti"
+ },
+ {
+ "drilldown" : "James Smith",
+ "name" : "James Smith",
+ "y" : 3
+ },
+ {
+ "drilldown" : "Jorg Sommrey",
+ "name" : "Jorg Sommrey",
+ "y" : 1
+ },
+ {
+ "name" : "Luca Ferrari",
+ "drilldown" : "Luca Ferrari",
+ "y" : 6
+ },
+ {
+ "name" : "Mark Anderson",
+ "drilldown" : "Mark Anderson",
+ "y" : 2
+ },
+ {
+ "y" : 3,
+ "drilldown" : "Peter Campbell Smith",
+ "name" : "Peter Campbell Smith"
+ },
+ {
+ "y" : 1,
+ "name" : "Robert DiCicco",
+ "drilldown" : "Robert DiCicco"
+ },
+ {
+ "name" : "Roger Bell_West",
+ "drilldown" : "Roger Bell_West",
+ "y" : 5
+ },
+ {
+ "y" : 2,
+ "name" : "Simon Proctor",
+ "drilldown" : "Simon Proctor"
+ },
+ {
+ "y" : 4,
+ "name" : "Ulrich Rieke",
+ "drilldown" : "Ulrich Rieke"
+ },
+ {
+ "y" : 3,
+ "name" : "W. Luis Mochan",
+ "drilldown" : "W. Luis Mochan"
+ }
+ ],
+ "name" : "The Weekly Challenge - 146"
+ }
+ ],
+ "yAxis" : {
+ "title" : {
+ "text" : "Total Solutions"
+ }
+ },
+ "legend" : {
+ "enabled" : 0
+ },
+ "xAxis" : {
+ "type" : "category"
+ },
+ "title" : {
+ "text" : "The Weekly Challenge - 146"
+ },
"drilldown" : {
"series" : [
{
@@ -15,12 +136,12 @@
2
]
],
- "name" : "Abigail",
- "id" : "Abigail"
+ "id" : "Abigail",
+ "name" : "Abigail"
},
{
- "id" : "Andrew Shitov",
"name" : "Andrew Shitov",
+ "id" : "Andrew Shitov",
"data" : [
[
"Raku",
@@ -30,16 +151,15 @@
},
{
"id" : "Andrezgz",
- "name" : "Andrezgz",
"data" : [
[
"Perl",
2
]
- ]
+ ],
+ "name" : "Andrezgz"
},
{
- "id" : "Dave Jacoby",
"name" : "Dave Jacoby",
"data" : [
[
@@ -50,7 +170,8 @@
"Blog",
1
]
- ]
+ ],
+ "id" : "Dave Jacoby"
},
{
"data" : [
@@ -59,8 +180,8 @@
2
]
],
- "name" : "E. Choroba",
- "id" : "E. Choroba"
+ "id" : "E. Choroba",
+ "name" : "E. Choroba"
},
{
"data" : [
@@ -69,8 +190,8 @@
2
]
],
- "name" : "Feng Chang",
- "id" : "Feng Chang"
+ "id" : "Feng Chang",
+ "name" : "Feng Chang"
},
{
"id" : "Flavio Poletti",
@@ -91,7 +212,7 @@
"name" : "Flavio Poletti"
},
{
- "name" : "James Smith",
+ "id" : "James Smith",
"data" : [
[
"Perl",
@@ -102,20 +223,21 @@
1
]
],
- "id" : "James Smith"
+ "name" : "James Smith"
},
{
+ "id" : "Jorg Sommrey",
"data" : [
[
"Perl",
1
]
],
- "name" : "Jorg Sommrey",
- "id" : "Jorg Sommrey"
+ "name" : "Jorg Sommrey"
},
{
"name" : "Luca Ferrari",
+ "id" : "Luca Ferrari",
"data" : [
[
"Raku",
@@ -125,8 +247,7 @@
"Blog",
4
]
- ],
- "id" : "Luca Ferrari"
+ ]
},
{
"name" : "Mark Anderson",
@@ -139,7 +260,6 @@
"id" : "Mark Anderson"
},
{
- "id" : "Peter Campbell Smith",
"data" : [
[
"Perl",
@@ -150,20 +270,20 @@
1
]
],
+ "id" : "Peter Campbell Smith",
"name" : "Peter Campbell Smith"
},
{
- "name" : "Robert DiCicco",
"data" : [
[
"Perl",
1
]
],
- "id" : "Robert DiCicco"
+ "id" : "Robert DiCicco",
+ "name" : "Robert DiCicco"
},
{
- "name" : "Roger Bell_West",
"data" : [
[
"Perl",
@@ -178,20 +298,34 @@
1
]
],
- "id" : "Roger Bell_West"
+ "id" : "Roger Bell_West",
+ "name" : "Roger Bell_West"
},
{
+ "id" : "Simon Proctor",
"data" : [
[
"Raku",
2
]
],
- "name" : "Simon Proctor",
- "id" : "Simon Proctor"
+ "name" : "Simon Proctor"
+ },
+ {
+ "name" : "Ulrich Rieke",
+ "id" : "Ulrich Rieke",
+ "data" : [
+ [
+ "Perl",
+ 2
+ ],
+ [
+ "Raku",
+ 2
+ ]
+ ]
},
{
- "id" : "W. Luis Mochan",
"name" : "W. Luis Mochan",
"data" : [
[
@@ -202,127 +336,12 @@
"Blog",
1
]
- ]
+ ],
+ "id" : "W. Luis Mochan"
}
]
},
- "legend" : {
- "enabled" : 0
- },
- "plotOptions" : {
- "series" : {
- "borderWidth" : 0,
- "dataLabels" : {
- "enabled" : 1,
- "format" : "{point.y}"
- }
- }
- },
"subtitle" : {
- "text" : "[Champions: 16] Last updated at 2022-01-04 21:57:59 GMT"
- },
- "title" : {
- "text" : "The Weekly Challenge - 146"
- },
- "series" : [
- {
- "colorByPoint" : 1,
- "data" : [
- {
- "name" : "Abigail",
- "y" : 4,
- "drilldown" : "Abigail"
- },
- {
- "name" : "Andrew Shitov",
- "y" : 1,
- "drilldown" : "Andrew Shitov"
- },
- {
- "name" : "Andrezgz",
- "drilldown" : "Andrezgz",
- "y" : 2
- },
- {
- "name" : "Dave Jacoby",
- "drilldown" : "Dave Jacoby",
- "y" : 3
- },
- {
- "y" : 2,
- "drilldown" : "E. Choroba",
- "name" : "E. Choroba"
- },
- {
- "drilldown" : "Feng Chang",
- "y" : 2,
- "name" : "Feng Chang"
- },
- {
- "name" : "Flavio Poletti",
- "y" : 6,
- "drilldown" : "Flavio Poletti"
- },
- {
- "drilldown" : "James Smith",
- "y" : 3,
- "name" : "James Smith"
- },
- {
- "name" : "Jorg Sommrey",
- "y" : 1,
- "drilldown" : "Jorg Sommrey"
- },
- {
- "name" : "Luca Ferrari",
- "drilldown" : "Luca Ferrari",
- "y" : 6
- },
- {
- "name" : "Mark Anderson",
- "drilldown" : "Mark Anderson",
- "y" : 2
- },
- {
- "drilldown" : "Peter Campbell Smith",
- "y" : 3,
- "name" : "Peter Campbell Smith"
- },
- {
- "drilldown" : "Robert DiCicco",
- "y" : 1,
- "name" : "Robert DiCicco"
- },
- {
- "drilldown" : "Roger Bell_West",
- "y" : 5,
- "name" : "Roger Bell_West"
- },
- {
- "y" : 2,
- "drilldown" : "Simon Proctor",
- "name" : "Simon Proctor"
- },
- {
- "name" : "W. Luis Mochan",
- "drilldown" : "W. Luis Mochan",
- "y" : 3
- }
- ],
- "name" : "The Weekly Challenge - 146"
- }
- ],
- "yAxis" : {
- "title" : {
- "text" : "Total Solutions"
- }
- },
- "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/>",
- "followPointer" : 1
+ "text" : "[Champions: 17] Last updated at 2022-01-04 22:20:26 GMT"
}
}
diff --git a/stats/pwc-language-breakdown-summary.json b/stats/pwc-language-breakdown-summary.json
index 98c6d4df98..f5bbea9060 100644
--- a/stats/pwc-language-breakdown-summary.json
+++ b/stats/pwc-language-breakdown-summary.json
@@ -1,30 +1,25 @@
{
+ "title" : {
+ "text" : "The Weekly Challenge Contributions [2019 - 2021]"
+ },
+ "subtitle" : {
+ "text" : "Last updated at 2022-01-04 22:20:26 GMT"
+ },
"chart" : {
"type" : "column"
},
- "legend" : {
- "enabled" : "false"
- },
- "subtitle" : {
- "text" : "Last updated at 2022-01-04 21:57:59 GMT"
+ "tooltip" : {
+ "pointFormat" : "<b>{point.y:.0f}</b>"
},
- "title" : {
- "text" : "The Weekly Challenge Contributions [2019 - 2021]"
+ "yAxis" : {
+ "title" : {
+ "text" : null
+ },
+ "min" : 0
},
"series" : [
{
- "dataLabels" : {
- "y" : 10,
- "style" : {
- "fontFamily" : "Verdana, sans-serif",
- "fontSize" : "13px"
- },
- "color" : "#FFFFFF",
- "align" : "right",
- "rotation" : -90,
- "format" : "{point.y:.0f}",
- "enabled" : "true"
- },
+ "name" : "Contributions",
"data" : [
[
"Blog",
@@ -32,32 +27,37 @@
],
[
"Perl",
- 7027
+ 7029
],
[
"Raku",
- 4232
+ 4234
]
],
- "name" : "Contributions"
+ "dataLabels" : {
+ "style" : {
+ "fontFamily" : "Verdana, sans-serif",
+ "fontSize" : "13px"
+ },
+ "align" : "right",
+ "enabled" : "true",
+ "color" : "#FFFFFF",
+ "format" : "{point.y:.0f}",
+ "y" : 10,
+ "rotation" : -90
+ }
}
],
- "yAxis" : {
- "title" : {
- "text" : null
- },
- "min" : 0
- },
"xAxis" : {
- "type" : "category",
"labels" : {
"style" : {
"fontFamily" : "Verdana, sans-serif",
"fontSize" : "13px"
}
- }
+ },
+ "type" : "category"
},
- "tooltip" : {
- "pointFormat" : "<b>{point.y:.0f}</b>"
+ "legend" : {
+ "enabled" : "false"
}
}
diff --git a/stats/pwc-language-breakdown.json b/stats/pwc-language-breakdown.json
index db3dd9085f..8492e696e0 100644
--- a/stats/pwc-language-breakdown.json
+++ b/stats/pwc-language-breakdown.json
@@ -1,773 +1,4 @@
{
- "tooltip" : {
- "followPointer" : "true",
- "pointFormat" : "<span style=\"color:{point.color}\">Challenge {point.name}</span>: <b>{point.y:f}</b><br/>",
- "headerFormat" : "<span style=\"font-size:11px\"></span>"
- },
- "xAxis" : {
- "type" : "category"
- },
- "yAxis" : {
- "title" : {
- "text" : "Total Solutions"
- }
- },
- "series" : [
- {
- "colorByPoint" : "true",
- "name" : "The Weekly Challenge Languages",
- "data" : [
- {
- "name" : "#001",
- "drilldown" : "001",
- "y" : 161
- },
- {
- "y" : 125,
- "drilldown" : "002",
- "name" : "#002"
- },
- {
- "drilldown" : "003",
- "y" : 83,
- "name" : "#003"
- },
- {
- "