From 814dadd73434d2f7fa6db52a424d6b059913be64 Mon Sep 17 00:00:00 2001 From: Mohammad S Anwar Date: Mon, 15 Nov 2021 03:07:56 +0000 Subject: - Added solutions by Colin Crain. --- challenge-138/colin-crain/perl/ch-1.pl | 98 ++ challenge-138/colin-crain/perl/ch-2.pl | 156 +++ stats/pwc-current.json | 499 ++++---- stats/pwc-language-breakdown-summary.json | 52 +- stats/pwc-language-breakdown.json | 1960 ++++++++++++++--------------- stats/pwc-leaders.json | 728 +++++------ stats/pwc-summary-1-30.json | 42 +- stats/pwc-summary-121-150.json | 42 +- stats/pwc-summary-151-180.json | 98 +- stats/pwc-summary-181-210.json | 38 +- stats/pwc-summary-211-240.json | 48 +- stats/pwc-summary-241-270.json | 60 +- stats/pwc-summary-31-60.json | 40 +- stats/pwc-summary-61-90.json | 36 +- stats/pwc-summary-91-120.json | 34 +- stats/pwc-summary.json | 36 +- 16 files changed, 2118 insertions(+), 1849 deletions(-) create mode 100755 challenge-138/colin-crain/perl/ch-1.pl create mode 100755 challenge-138/colin-crain/perl/ch-2.pl diff --git a/challenge-138/colin-crain/perl/ch-1.pl b/challenge-138/colin-crain/perl/ch-1.pl new file mode 100755 index 0000000000..2e7e7f574e --- /dev/null +++ b/challenge-138/colin-crain/perl/ch-1.pl @@ -0,0 +1,98 @@ +#!/Users/colincrain/perl5/perlbrew/perls/perl-5.32.0/bin/perl +# +# .pl +# +# +# Workdays +# Submitted by: Mohammad S Anwar +# You are given a year, $year in 4-digits form. +# +# Write a script to calculate the total number of workdays in the given year. +# +# For the task, we consider, Monday - Friday as workdays. +# +# Example 1 +# Input: $year = 2021 +# Output: 261 +# Example 2 +# Input: $year = 2020 +# Output: 262 + +# method: +# +# Ahh, another DateTime problem, as far as I'm concerned. +# Excellent. This is good for me, actually, as I could use more +# immediate familiiarity with that module. I did previusly use +# Date::Manip on a project, but I think I'm going to move on +# over on this one. Let's take 'er out for a spin, as they say. +# +# The way we'll do this is to count them. We have January 1st, +# and a set duration of one day. We assess a day, chalk it up +# if its a workday, count down the days remaining to be +# counted, and move to the next day. +# +# Some people would solve this by determining whether its a +# leap year and responding 261 or 262 appropriately, but I +# consider this unsporting. I will pretend I don't know the +# answer and recalculate it. +# +# I think it's the scientist thing. There's no shame in +# repeating an experiment. I suppose I am relying on DateTime +# to give me the correct days of the week, but recreating that +# calculation breaks the covenant to not mess with doing your +# own calender calculations. The calender we use is a twisted +# artifact wedged and shimmed into fitting just right, +# requiring constant maintenance to properly reflect the +# physical world we live in. Leap years are child's play, a +# hack from centuries ago. Leap century years are geeting +# there, but leap seconds are where its at, baby, and don't you +# forget. We must properly account for Earth's perturbations on +# its axis. I do pity the poor spacecraft designers, who need +# to toss reletivity into the mix. I don't know how they do it. +# +# Seriously, I don't know how they do it. Probably a lot of +# little post-corrections whenever things get out of line. But +# that's just a guess. Try and avoid making it matter and fix +# it in editing. +# +# In any case we're going to play around with durations a bit +# and count the days. Come on, it'll be fun. +# +# +# © 2021 colin crain +## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## + + + +use warnings; +use strict; +use utf8; +use feature ":5.26"; +use feature qw(signatures); +no warnings 'experimental::signatures'; + +use DateTime; + +my $year = shift @ARGV || 2020; + +my $dt = DateTime + ->new( year => $year , + month => 1 , + day => 1 ); + +my $dur = DateTime::Duration + ->new ( days => 1 ); + +my $num_days = 365; +$dt->is_leap_year && $num_days++; +my $workdays; + + +while ( $num_days-- ) { + $dt->dow < 6 && $workdays++; + $dt->add( $dur ); +} + +say $workdays; + + diff --git a/challenge-138/colin-crain/perl/ch-2.pl b/challenge-138/colin-crain/perl/ch-2.pl new file mode 100755 index 0000000000..d94ef038d6 --- /dev/null +++ b/challenge-138/colin-crain/perl/ch-2.pl @@ -0,0 +1,156 @@ +#!/Users/colincrain/perl5/perlbrew/perls/perl-5.32.0/bin/perl +# +# .pl +# +# Split Number +# Submitted by: Mohammad S Anwar +# You are given a perfect square. +# +# Write a script to figure out if the square root the given number +# is same as sum of 2 or more splits of the given number. +# +# Example 1 +# Input: $n = 81 +# Output: 1 +# +# Since, sqrt(81) = 8 + 1 +# +# Example 2 +# Input: $n = 9801 +# Output: 1 +# +# Since, sqrt(9801) = 98 + 0 + 1 +# +# Example 3 +# Input: $n = 36 +# Output: 0 +# +# Since, sqrt(36) != 3 + 6 +# +# +# method: +# +# "2 or more splits of the given number" +# +# The what of the what? Splits? What is that? I mean, I see what it +# is. You might call it a sort of "digital partioning", with +# sequential digits grouped in various arrangements. It's +# mathematically curious because the positional values change for a +# given digit depending on the segmentation. Mathematically it's +# all very weird. +# +# SOmehow I doubt there's any other name for it: "splits" is as +# good as any, but "digital partition" at least sounds like a +# specific process, like the digital root with 50% less Voodoo. Or +# maybe Kabbalah would be more accurate. +# +# In any case it all soounds very complex if we look at the groups +# of numbers generated when multiple splitting variations are +# available. One thing is noteworthy, however, and that is that we +# are taking ordered sets; if different partitionings generate the +# same set of values, and hence the same sum, from different +# groupings of the digits, then that's just coincidence. The +# different groupings are different partitions and that is that. +# +# For example take the number 361361. There are many partitions +# available, but two of these are (36) + (1) + (3) + (6) + (1) and +# (3) + (6) + (1) + (36) + (1) As the divisions lie in different +# places, they would be different partitions, or slices. As they +# sum to the same value this makes no difference for this task. The +# task asks only whether such a matching digital partition exists, +# not what it is. +# +# Of ocurse we're going to ignore that and find them all. That, +# after all, is how we roll. +# +# Focusing on the numbers produced is daunting, as the values a +# given digit may have changes drastically as it changes +# positionally, so I think it best to not solve the problem +# mathematically at all. We're looking at an ordered collection of +# items and wish to divide it into groups, maintaining local +# postional order. We can do that by focusing not on the items, but +# rather on the division points. +# +# There are n-1 division points between items, in this case the +# individual digits. Each point can either hold a division or not, +# or occupy one of two states. Another way of saying this is we are +# looking for a set of subsets of a set of n-1 elements, which has +# 2^n-1 elements. The states, whether we have a division between +# two chaaracters or not, can be mapped to a bit in a binary number +# matching that position: a three digit binary number can map to +# the three divisions between four characters. If the bit is set, +# we make a slice, or if it is not we leave the characters +# connected. If we do this over the range from 0 to (2^n-1)-1 we +# will create a template for every combination of splits and joins +# possible between n characters, and hence every substring +# combination. +# +# We are given a perfect square, so we know that the square root +# will be an integer. Just to be sure we could validate our inpout +# at this point to make sure we're all on the same page, so to +# speak. + + + + +# +# © 2021 colin crain +## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## + + + +use warnings; +use strict; +use utf8; +use feature ":5.26"; +use feature qw(signatures); +no warnings 'experimental::signatures'; +use List::Util qw( sum ); + +for my $num (1..100000) { + + $num *= $num; + my @output = digipart( $num ); + next unless scalar @output; + + say "INPUT: ", $num; + say "OUTPUT: found ", scalar @output, " solutions"; + + for (1..scalar @output) { + say join ' + ', (shift @output)->@*; + } + + say ''; + +} + +sub perfect_root ( $num ) { +## checks to see whether $num is a perfect square. If so, returns the +## square root, if not, returns 0 + my $root = int(sqrt $num); + return $root**2 == $num + ? $root + : 0 ; +} + +sub digipart ( $num ) { + my $root = perfect_root( $num ); + my $div = length($num) - 1; + my $bfmt = "%0${div}b"; + my @output; + + for (0..2**$div-1) { + my $bin = sprintf $bfmt, $_; + my @sliced = substr $num, 0, 1; + for my $pos (0..$div-1) { + substr ($bin, $pos, 1) == 1 + ? $sliced[-1] .= substr $num, $pos+1, 1 + : push @sliced, substr $num, $pos+1, 1 ; + } + if ( sum(@sliced) == $root ) { + push @output, \@sliced; + } + } + return @output; +} + diff --git a/stats/pwc-current.json b/stats/pwc-current.json index 158375f22c..cc0e66beba 100644 --- a/stats/pwc-current.json +++ b/stats/pwc-current.json @@ -1,35 +1,202 @@ { - "chart" : { - "type" : "column" + "title" : { + "text" : "The Weekly Challenge - 138" }, - "tooltip" : { - "followPointer" : 1, - "pointFormat" : "{point.name}: {point.y:f}
", - "headerFormat" : "{series.name}
" + "subtitle" : { + "text" : "[Champions: 32] Last updated at 2021-11-15 03:06:16 GMT" }, "plotOptions" : { "series" : { - "borderWidth" : 0, "dataLabels" : { - "enabled" : 1, - "format" : "{point.y}" - } + "format" : "{point.y}", + "enabled" : 1 + }, + "borderWidth" : 0 } }, - "xAxis" : { - "type" : "category" - }, - "subtitle" : { - "text" : "[Champions: 31] Last updated at 2021-11-15 02:01:15 GMT" - }, + "series" : [ + { + "name" : "The Weekly Challenge - 138", + "colorByPoint" : 1, + "data" : [ + { + "y" : 4, + "name" : "Abigail", + "drilldown" : "Abigail" + }, + { + "drilldown" : "Andrew Shitov", + "name" : "Andrew Shitov", + "y" : 1 + }, + { + "y" : 4, + "name" : "Arne Sommer", + "drilldown" : "Arne Sommer" + }, + { + "name" : "Athanasius", + "drilldown" : "Athanasius", + "y" : 4 + }, + { + "drilldown" : "Bob Lied", + "name" : "Bob Lied", + "y" : 2 + }, + { + "drilldown" : "Bruce Gray", + "name" : "Bruce Gray", + "y" : 5 + }, + { + "y" : 3, + "name" : "Cheok-Yin Fung", + "drilldown" : "Cheok-Yin Fung" + }, + { + "drilldown" : "Colin Crain", + "name" : "Colin Crain", + "y" : 2 + }, + { + "y" : 3, + "drilldown" : "Dave Jacoby", + "name" : "Dave Jacoby" + }, + { + "name" : "Duncan C. White", + "drilldown" : "Duncan C. White", + "y" : 2 + }, + { + "y" : 2, + "name" : "E. Choroba", + "drilldown" : "E. Choroba" + }, + { + "y" : 6, + "drilldown" : "Flavio Poletti", + "name" : "Flavio Poletti" + }, + { + "drilldown" : "James Smith", + "name" : "James Smith", + "y" : 3 + }, + { + "name" : "Jan Krnavek", + "drilldown" : "Jan Krnavek", + "y" : 2 + }, + { + "y" : 2, + "name" : "Jorg Sommrey", + "drilldown" : "Jorg Sommrey" + }, + { + "name" : "Laurent Rosenfeld", + "drilldown" : "Laurent Rosenfeld", + "y" : 5 + }, + { + "drilldown" : "Lubos Kolouch", + "name" : "Lubos Kolouch", + "y" : 2 + }, + { + "y" : 6, + "drilldown" : "Luca Ferrari", + "name" : "Luca Ferrari" + }, + { + "y" : 2, + "name" : "Mark Anderson", + "drilldown" : "Mark Anderson" + }, + { + "name" : "Matthew Neleigh", + "drilldown" : "Matthew Neleigh", + "y" : 1 + }, + { + "name" : "Mohammad S Anwar", + "drilldown" : "Mohammad S Anwar", + "y" : 2 + }, + { + "name" : "Niels van Dijke", + "drilldown" : "Niels van Dijke", + "y" : 2 + }, + { + "drilldown" : "Paulo Custodio", + "name" : "Paulo Custodio", + "y" : 2 + }, + { + "y" : 2, + "drilldown" : "Pete Houston", + "name" : "Pete Houston" + }, + { + "name" : "Peter Campbell Smith", + "drilldown" : "Peter Campbell Smith", + "y" : 2 + }, + { + "y" : 2, + "name" : "Robert DiCicco", + "drilldown" : "Robert DiCicco" + }, + { + "y" : 5, + "name" : "Roger Bell_West", + "drilldown" : "Roger Bell_West" + }, + { + "drilldown" : "Simon Green", + "name" : "Simon Green", + "y" : 3 + }, + { + "y" : 2, + "drilldown" : "Steven Wilson", + "name" : "Steven Wilson" + }, + { + "name" : "Ulrich Rieke", + "drilldown" : "Ulrich Rieke", + "y" : 4 + }, + { + "name" : "W. Luis Mochan", + "drilldown" : "W. Luis Mochan", + "y" : 3 + }, + { + "name" : "Wanderdoc", + "drilldown" : "Wanderdoc", + "y" : 2 + } + ] + } + ], "yAxis" : { "title" : { "text" : "Total Solutions" } }, + "legend" : { + "enabled" : 0 + }, + "chart" : { + "type" : "column" + }, "drilldown" : { "series" : [ { + "id" : "Abigail", "data" : [ [ "Perl", @@ -40,17 +207,16 @@ 2 ] ], - "name" : "Abigail", - "id" : "Abigail" + "name" : "Abigail" }, { + "id" : "Andrew Shitov", "data" : [ [ "Raku", 1 ] ], - "id" : "Andrew Shitov", "name" : "Andrew Shitov" }, { @@ -68,10 +234,12 @@ 1 ] ], - "name" : "Arne Sommer", - "id" : "Arne Sommer" + "id" : "Arne Sommer", + "name" : "Arne Sommer" }, { + "name" : "Athanasius", + "id" : "Athanasius", "data" : [ [ "Perl", @@ -81,21 +249,20 @@ "Raku", 2 ] - ], - "id" : "Athanasius", - "name" : "Athanasius" + ] }, { "id" : "Bob Lied", - "name" : "Bob Lied", "data" : [ [ "Perl", 2 ] - ] + ], + "name" : "Bob Lied" }, { + "id" : "Bruce Gray", "data" : [ [ "Perl", @@ -110,11 +277,9 @@ 1 ] ], - "id" : "Bruce Gray", "name" : "Bruce Gray" }, { - "id" : "Cheok-Yin Fung", "name" : "Cheok-Yin Fung", "data" : [ [ @@ -125,9 +290,21 @@ "Blog", 1 ] - ] + ], + "id" : "Cheok-Yin Fung" }, { + "name" : "Colin Crain", + "data" : [ + [ + "Perl", + 2 + ] + ], + "id" : "Colin Crain" + }, + { + "id" : "Dave Jacoby", "data" : [ [ "Perl", @@ -138,28 +315,27 @@ 1 ] ], - "name" : "Dave Jacoby", - "id" : "Dave Jacoby" + "name" : "Dave Jacoby" }, { - "name" : "Duncan C. White", - "id" : "Duncan C. White", "data" : [ [ "Perl", 2 ] - ] + ], + "id" : "Duncan C. White", + "name" : "Duncan C. White" }, { - "id" : "E. Choroba", - "name" : "E. Choroba", "data" : [ [ "Perl", 2 ] - ] + ], + "id" : "E. Choroba", + "name" : "E. Choroba" }, { "name" : "Flavio Poletti", @@ -180,8 +356,6 @@ ] }, { - "name" : "James Smith", - "id" : "James Smith", "data" : [ [ "Perl", @@ -191,7 +365,9 @@ "Blog", 1 ] - ] + ], + "id" : "James Smith", + "name" : "James Smith" }, { "name" : "Jan Krnavek", @@ -205,15 +381,16 @@ }, { "name" : "Jorg Sommrey", - "id" : "Jorg Sommrey", "data" : [ [ "Perl", 2 ] - ] + ], + "id" : "Jorg Sommrey" }, { + "id" : "Laurent Rosenfeld", "data" : [ [ "Perl", @@ -228,20 +405,21 @@ 1 ] ], - "id" : "Laurent Rosenfeld", "name" : "Laurent Rosenfeld" }, { + "name" : "Lubos Kolouch", "data" : [ [ "Perl", 2 ] ], - "name" : "Lubos Kolouch", "id" : "Lubos Kolouch" }, { + "name" : "Luca Ferrari", + "id" : "Luca Ferrari", "data" : [ [ "Raku", @@ -251,19 +429,17 @@ "Blog", 4 ] - ], - "id" : "Luca Ferrari", - "name" : "Luca Ferrari" + ] }, { - "name" : "Mark Anderson", "id" : "Mark Anderson", "data" : [ [ "Raku", 2 ] - ] + ], + "name" : "Mark Anderson" }, { "name" : "Matthew Neleigh", @@ -276,7 +452,6 @@ ] }, { - "name" : "Mohammad S Anwar", "id" : "Mohammad S Anwar", "data" : [ [ @@ -287,16 +462,17 @@ "Raku", 1 ] - ] + ], + "name" : "Mohammad S Anwar" }, { + "name" : "Niels van Dijke", "data" : [ [ "Perl", 2 ] ], - "name" : "Niels van Dijke", "id" : "Niels van Dijke" }, { @@ -306,42 +482,40 @@ 2 ] ], - "name" : "Paulo Custodio", - "id" : "Paulo Custodio" + "id" : "Paulo Custodio", + "name" : "Paulo Custodio" }, { + "name" : "Pete Houston", "data" : [ [ "Perl", 2 ] ], - "name" : "Pete Houston", "id" : "Pete Houston" }, { + "name" : "Peter Campbell Smith", + "id" : "Peter Campbell Smith", "data" : [ [ "Perl", 2 ] - ], - "name" : "Peter Campbell Smith", - "id" : "Peter Campbell Smith" + ] }, { "id" : "Robert DiCicco", - "name" : "Robert DiCicco", "data" : [ [ "Perl", 2 ] - ] + ], + "name" : "Robert DiCicco" }, { - "id" : "Roger Bell_West", - "name" : "Roger Bell_West", "data" : [ [ "Perl", @@ -355,10 +529,11 @@ "Blog", 1 ] - ] + ], + "id" : "Roger Bell_West", + "name" : "Roger Bell_West" }, { - "id" : "Simon Green", "name" : "Simon Green", "data" : [ [ @@ -369,11 +544,11 @@ "Blog", 1 ] - ] + ], + "id" : "Simon Green" }, { "id" : "Steven Wilson", - "name" : "Steven Wilson", "data" : [ [ "Perl", @@ -383,7 +558,8 @@ "Blog", 1 ] - ] + ], + "name" : "Steven Wilson" }, { "data" : [ @@ -396,12 +572,10 @@ 2 ] ], - "name" : "Ulrich Rieke", - "id" : "Ulrich Rieke" + "id" : "Ulrich Rieke", + "name" : "Ulrich Rieke" }, { - "id" : "W. Luis Mochan", - "name" : "W. Luis Mochan", "data" : [ [ "Perl", @@ -411,187 +585,28 @@ "Blog", 1 ] - ] + ], + "id" : "W. Luis Mochan", + "name" : "W. Luis Mochan" }, { - "id" : "Wanderdoc", - "name" : "Wanderdoc", "data" : [ [ "Perl", 2 ] - ] + ], + "id" : "Wanderdoc", + "name" : "Wanderdoc" } ] }, - "series" : [ - { - "name" : "The Weekly Challenge - 138", - "colorByPoint" : 1, - "data" : [ - { - "drilldown" : "Abigail", - "y" : 4, - "name" : "Abigail" - }, - { - "name" : "Andrew Shitov", - "y" : 1, - "drilldown" : "Andrew Shitov" - }, - { - "drilldown" : "Arne Sommer", - "name" : "Arne Sommer", - "y" : 4 - }, - { - "name" : "Athanasius", - "y" : 4, - "drilldown" : "Athanasius" - }, - { - "drilldown" : "Bob Lied", - "name" : "Bob Lied", - "y" : 2 - }, - { - "y" : 5, - "name" : "Bruce Gray", - "drilldown" : "Bruce Gray" - }, - { - "name" : "Cheok-Yin Fung", - "y" : 3, - "drilldown" : "Cheok-Yin Fung" - }, - { - "y" : 3, - "name" : "Dave Jacoby", - "drilldown" : "Dave Jacoby" - }, - { - "y" : 2, - "name" : "Duncan C. White", - "drilldown" : "Duncan C. White" - }, - { - "y" : 2, - "name" : "E. Choroba", - "drilldown" : "E. Choroba" - }, - { - "drilldown" : "Flavio Poletti", - "name" : "Flavio Poletti", - "y" : 6 - }, - { - "drilldown" : "James Smith", - "name" : "James Smith", - "y" : 3 - }, - { - "drilldown" : "Jan Krnavek", - "y" : 2, - "name" : "Jan Krnavek" - }, - { - "drilldown" : "Jorg Sommrey", - "y" : 2, - "name" : "Jorg Sommrey" - }, - { - "drilldown" : "Laurent Rosenfeld", - "name" : "Laurent Rosenfeld", - "y" : 5 - }, - { - "y" : 2, - "name" : "Lubos Kolouch", - "drilldown" : "Lubos Kolouch" - }, - { - "drilldown" : "Luca Ferrari", - "y" : 6, - "name" : "Luca Ferrari" - }, - { - "name" : "Mark Anderson", - "y" : 2, - "drilldown" : "Mark Anderson" - }, - { - "name" : "Matthew Neleigh", - "y" : 1, - "drilldown" : "Matthew Neleigh" - }, - { - "drilldown" : "Mohammad S Anwar", - "name" : "Mohammad S Anwar", - "y" : 2 - }, - { - "name" : "Niels van Dijke", - "y" : 2, - "drilldown" : "Niels van Dijke" - }, - { - "drilldown" : "Paulo Custodio", - "name" : "Paulo Custodio", - "y" : 2 - }, - { - "drilldown" : "Pete Houston", - "y" : 2, - "name" : "Pete Houston" - }, - { - "y" : 2, - "name" : "Peter Campbell Smith", - "drilldown" : "Peter Campbell Smith" - }, - { - "name" : "Robert DiCicco", - "y" : 2, - "drilldown" : "Robert DiCicco" - }, - { - "drilldown" : "Roger Bell_West", - "name" : "Roger Bell_West", - "y" : 5 - }, - { - "name" : "Simon Green", - "y" : 3, - "drilldown" : "Simon Green" - }, - { - "drilldown" : "Steven Wilson", - "y" : 2, - "name" : "Steven Wilson" - }, - { - "y" : 4, - "name" : "Ulrich Rieke", - "drilldown" : "Ulrich Rieke" - }, - { - "drilldown" : "W. Luis Mochan", - "y" : 3, - "name" : "W. Luis Mochan" - }, - { - "y" : 2, - "name" : "Wanderdoc", - "drilldown" : "Wanderdoc" - } - ] - } - ], - "title" : { - "text" : "The Weekly Challenge - 138" + "tooltip" : { + "pointFormat" : "{point.name}: {point.y:f}
", + "headerFormat" : "{series.name}
", + "followPointer" : 1 }, - "legend" : { - "enabled" : 0 + "xAxis" : { + "type" : "category" } } diff --git a/stats/pwc-language-breakdown-summary.json b/stats/pwc-language-breakdown-summary.json index 3fcaa03a1c..ac92515c6d 100644 --- a/stats/pwc-language-breakdown-summary.json +++ b/stats/pwc-language-breakdown-summary.json @@ -1,28 +1,18 @@ { "subtitle" : { - "text" : "Last updated at 2021-11-15 02:01:15 GMT" + "text" : "Last updated at 2021-11-15 03:06:16 GMT" + }, + "title" : { + "text" : "The Weekly Challenge Contributions [2019 - 2021]" }, "yAxis" : { - "min" : 0, "title" : { "text" : null - } + }, + "min" : 0 }, "series" : [ { - "name" : "Contributions", - "dataLabels" : { - "color" : "#FFFFFF", - "format" : "{point.y:.0f}", - "align" : "right", - "style" : { - "fontSize" : "13px", - "fontFamily" : "Verdana, sans-serif" - }, - "enabled" : "true", - "y" : 10, - "rotation" : -90 - }, "data" : [ [ "Blog", @@ -30,34 +20,44 @@ ], [ "Perl", - 6639 + 6641 ], [ "Raku", 4018 ] - ] + ], + "dataLabels" : { + "rotation" : -90, + "format" : "{point.y:.0f}", + "enabled" : "true", + "color" : "#FFFFFF", + "align" : "right", + "style" : { + "fontSize" : "13px", + "fontFamily" : "Verdana, sans-serif" + }, + "y" : 10 + }, + "name" : "Contributions" } ], - "title" : { - "text" : "The Weekly Challenge Contributions [2019 - 2021]" - }, "legend" : { "enabled" : "false" }, - "chart" : { - "type" : "column" - }, "tooltip" : { "pointFormat" : "{point.y:.0f}" }, + "chart" : { + "type" : "column" + }, "xAxis" : { - "type" : "category", "labels" : { "style" : { "fontSize" : "13px", "fontFamily" : "Verdana, sans-serif" } - } + }, + "type" : "category" } } diff --git a/stats/pwc-language-breakdown.json b/stats/pwc-language-breakdown.json index 203a928012..64bbd311b7 100644 --- a/stats/pwc-language-breakdown.json +++ b/stats/pwc-language-breakdown.json @@ -1,725 +1,7 @@ { - "plotOptions" : { - "series" : { - "dataLabels" : { - "enabled" : 1, - "format" : "{point.y}" - }, - "borderWidth" : 0 - } - }, - "xAxis" : { - "type" : "category" - }, "chart" : { "type" : "column" }, - "tooltip" : { - "pointFormat" : "Challenge {point.name}: {point.y:f}
", - "headerFormat" : "", - "followPointer" : "true" - }, - "legend" : { - "enabled" : "false" - }, - "series" : [ - { - "colorByPoint" : "true", - "data" : [ - { - "name" : "#001", - "y" : 161, - "drilldown" : "001" - }, - { - "y" : 125, - "name" : "#002", - "drilldown" : "002" - }, - { - "y" : 83, - "name" : "#003", - "drilldown" : "003" - }, - { - "drilldown" : "004", - "y" : 99, - "name" : "#004" - }, - { - "drilldown" : "005", - "y" : 78, - "name" : "#005" - }, - { - "drilldown" : "006", - "y" : 58, - "name" : "#006" - }, - { - "name" : "#007", - "y" : 64, - "drilldown" : "007" - }, - { - "drilldown" : "008", - "y" : 78, - "name" : "#008" - }, - { - "drilldown" : "009", - "y" : 76, - "name" : "#009" - }, - { - "name" : "#010", - "y" : 65, - "drilldown" : "010" - }, - { - "drilldown" : "011", - "name" : "#011", - "y" : 85 - }, - { - "y" : 89, - "name" : "#012", - "drilldown" : "012" - }, - { - "y" : 85, - "name" : "#013", - "drilldown" : "013" - }, - { - "drilldown" : "014", - "name" : "#014", - "y" : 101 - }, - { - "drilldown" : "015", - "name" : "#015", - "y" : 99 - }, - { - "drilldown" : "016", - "name" : "#016", - "y" : 71 - }, - { - "drilldown" : "017", - "y" : 84, - "name" : "#017" - }, - { - "y" : 81, - "name" : "#018", - "drilldown" : "018" - }, - { - "drilldown" : "019", - "y" : 103, - "name" : "#019" - }, - { - "name" : "#020", - "y" : 101, - "drilldown" : "020" - }, - { - "drilldown" : "021", - "name" : "#021", - "y" : 72 - }, - { - "name" : "#022", - "y" : 68, - "drilldown" : "022" - }, - { - "name" : "#023", - "y" : 97, - "drilldown" : "023" - }, - { - "drilldown" : "024", - "y" : 75, - "name" : "#024" - }, - { - "name" : "#025", - "y" : 59, - "drilldown" : "025" - }, - { - "drilldown" : "026", - "name" : "#026", - "y" : 74 - }, - { - "drilldown" : "027", - "name" : "#027", - "y" : 60 - }, - { - "drilldown" : "028", - "y" : 80, - "name" : "#028" - }, - { - "y" : 79, - "name" : "#029", - "drilldown" : "029" - }, - { - "y" : 117, - "name" : "#030", - "drilldown" : "030" - }, - { - "drilldown" : "031", - "y" : 89, - "name" : "#031" - }, - { - "drilldown" : "032", - "y" : 94, - "name" : "#032" - }, - { - "name" : "#033", - "y" : 110, - "drilldown" : "033" - }, - { - "drilldown" : "034", - "y" : 64, - "name" : "#034" - }, - { - "drilldown" : "035", - "name" : "#035", - "y" : 64 - }, - { - "drilldown" : "036", - "name" : "#036", - "y" : 68 - }, - { - "y" : 67, - "name" : "#037", - "drilldown" : "037" - }, - { - "name" : "#038", - "y" : 68, - "drilldown" : "038" - }, - { - "drilldown" : "039", - "name" : "#039", - "y" : 62 - }, - { - "drilldown" : "040", - "y" : 73, - "name" : "#040" - }, - { - "drilldown" : "041", - "name" : "#041", - "y" : 76 - }, - { - "y" : 92, - "name" : "#042", - "drilldown" : "042" - }, - { - "name" : "#043", - "y" : 68, - "drilldown" : "043" - }, - { - "drilldown" : "044", - "y" : 85, - "name" : "#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" - }, - { - "drilldown" : "049", - "y" : 89, - "name" : "#049" - }, - { - "y" : 98, - "name" : "#050", - "drilldown" : "050" - }, - { - "name" : "#051", - "y" : 89, - "drilldown" : "051" - }, - { - "y" : 91, - "name" : "#052", - "drilldown" : "052" - }, - { - "y" : 101, - "name" : "#053", - "drilldown" : "053" - }, - { - "drilldown" : "054", - "name" : "#054", - "y" : 103 - }, - { - "drilldown" : "055", - "y" : 88, - "name" : "#055" - }, - { - "y" : 95, - "name" : "#056", - "drilldown" : "056" - }, - { - "drilldown" : "057", - "name" : "#057", - "y" : 80 - }, - { - "name" : "#058", - "y" : 69, - "drilldown" : "058" - }, - { - "drilldown" : "059", - "name" : "#059", - "y" : 89 - }, - { - "drilldown" : "060", - "y" : 85, - "name" : "#060" - }, - { - "drilldown" : "061", - "y" : 81, - "name" : "#061" - }, - { - "drilldown" : "062", - "y" : 58, - "name" : "#062" - }, - { - "name" : "#063", - "y" : 89, - "drilldown" : "063" - }, - { - "drilldown" : "064", - "name" : "#064", - "y" : 80 - }, - { - "drilldown" : "065", - "name" : "#065", - "y" : 73 - }, - { - "drilldown" : "066", - "y" : 84, - "name" : "#066" - }, - { - "y" : 90, - "name" : "#067", - "drilldown" : "067" - }, - { - "drilldown" : "068", - "y" : 75, - "name" : "#068" - }, - { - "y" : 83, - "name" : "#069", - "drilldown" : "069" - }, - { - "y" : 93, - "name" : "#070", - "drilldown" : "070" - }, - { - "name" : "#071", - "y" : 78, - "drilldown" : "071" - }, - { - "y" : 112, - "name" : "#072", - "drilldown" : "072" - }, - { - "drilldown" : "073", - "y" : 110, - "name" : "#073" - }, - { - "name" : "#074", - "y" : 115, - "drilldown" : "074" - }, - { - "drilldown" : "075", - "name" : "#075", - "y" : 115 - }, - { - "drilldown" : "076", - "y" : 99, - "name" : "#076" - }, - { - "y" : 98, - "name" : "#077", - "drilldown" : "077" - }, - { - "name" : "#078", - "y" : 127, - "drilldown" : "078" - }, - { - "drilldown" : "079", - "name" : "#079", - "y" : 122 - }, - { - "drilldown" : "080", - "name" : "#080", - "y" : 127 - }, - { - "drilldown" : "081", - "y" : 114, - "name" : "#081" - }, - { - "y" : 114, - "name" : "#082", - "drilldown" : "082" - }, - { - "y" : 127, - "name" : "#083", - "drilldown" : "083" - }, - { - "drilldown" : "084", - "name" : "#084", - "y" : 119 - }, - { - "name" : "#085", - "y" : 114, - "drilldown" : "085" - }, - { - "name" : "#086", - "y" : 104, - "drilldown" : "086" - }, - { - "drilldown" : "087", - "name" : "#087", - "y" : 101 - }, - { - "y" : 121, - "name" : "#088", - "drilldown" : "088" - }, - { - "name" : "#089", - "y" : 113, - "drilldown" : "089" - }, - { - "name" : "#090", - "y" : 113, - "drilldown" : "090" - }, - { - "name" : "#091", - "y" : 108, - "drilldown" : "091" - }, - { - "y" : 98, - "name" : "#092", - "drilldown" : "092" - }, - { - "drilldown" : "093", - "y" : 87, - "name" : "#093" - }, - { - "y" : 87, - "name" : "#094", - "drilldown" : "094" - }, - { - "drilldown" : "095", - "y" : 108, - "name" : "#095" - }, - { - "y" : 108, - "name" : "#096", - "drilldown" : "096" - }, - { - "name" : "#097", - "y" : 111, - "drilldown" : "097" - }, - { - "y" : 108, - "name" : "#098", - "drilldown" : "098" - }, - { - "drilldown" : "099", - "name" : "#099", - "y" : 97 - }, - { - "name" : "#100", - "y" : 120, - "drilldown" : "100" - }, - { - "y" : 83, - "name" : "#101", - "drilldown" : "101" - }, - { - "name" : "#102", - "y" : 90, - "drilldown" : "102" - }, - { - "drilldown" : "103", - "name" : "#103", - "y" : 79 - }, - { - "drilldown" : "104", - "y" : 85, - "name" : "#104" - }, - { - "drilldown" : "105", - "name" : "#105", - "y" : 75 - }, - { - "y" : 97, - "name" : "#106", - "drilldown" : "106" - }, - { - "drilldown" : "107", - "name" : "#107", - "y" : 90 - }, - { - "y" : 94, - "name" : "#108", - "drilldown" : "108" - }, - { - "name" : "#109", - "y" : 107, - "drilldown" : "109" - }, - { - "drilldown" : "110", - "y" : 108, - "name" : "#110" - }, - { - "name" : "#111", - "y" : 91, - "drilldown" : "111" - }, - { - "y" : 92, - "name" : "#112", - "drilldown" : "112" - }, - { - "y" : 92, - "name" : "#113", - "drilldown" : "113" - }, - { - "drilldown" : "114", - "y" : 108, - "name" : "#114" - }, - { - "drilldown" : "115", - "name" : "#115", - "y" : 96 - }, - { - "y" : 95, - "name" : "#116", - "drilldown" : "116" - }, - { - "drilldown" : "117", - "y" : 97, - "name" : "#117" - }, - { - "drilldown" : "118", - "name" : "#118", - "y" : 81 - }, - { - "y" : 123, - "name" : "#119", - "drilldown" : "119" - }, - { - "drilldown" : "120", - "y" : 114, - "name" : "#120" - }, - { - "drilldown" : "121", - "name" : "#121", - "y" : 90 - }, - { - "name" : "#122", - "y" : 108, - "drilldown" : "122" - }, - { - "drilldown" : "123", - "name" : "#123", - "y" : 103 - }, - { - "drilldown" : "124", - "y" : 83, - "name" : "#124" - }, - { - "drilldown" : "125", - "y" : 63, - "name" : "#125" - }, - { - "y" : 111, - "name" : "#126", - "drilldown" : "126" - }, - { - "name" : "#127", - "y" : 110, - "drilldown" : "127" - }, - { - "name" : "#128", - "y" : 69, - "drilldown" : "128" - }, - { - "name" : "#129", - "y" : 50, - "drilldown" : "129" - }, - { - "drilldown" : "130", - "y" : 73, - "name" : "#130" - }, - { - "y" : 91, - "name" : "#131", - "drilldown" : "131" - }, - { - "y" : 77, - "name" : "#132", - "drilldown" : "132" - }, - { - "y" : 93, - "name" : "#133", - "drilldown" : "133" - }, - { - "drilldown" : "134", - "y" : 92, - "name" : "#134" - }, - { - "name" : "#135", - "y" : 102, - "drilldown" : "135" - }, - { - "drilldown" : "136", - "y" : 93, - "name" : "#136" - }, - { - "y" : 96, - "name" : "#137", - "drilldown" : "137" - }, - { - "name" : "#138", - "y" : 90, - "drilldown" : "138" - } - ], - "name" : "The Weekly Challenge Languages" - } - ], "drilldown" : { "series" : [ { @@ -742,7 +24,6 @@ }, { "id" : "002", - "name" : "002", "data" : [ [ "Perl", @@ -756,9 +37,11 @@ "Blog", 10 ] - ] + ], + "name" : "002" }, { + "id" : "003", "data" : [ [ "Perl", @@ -773,11 +56,9 @@ 9 ] ], - "name" : "003", - "id" : "003" + "name" : "003" }, { - "id" : "004", "name" : "004", "data" : [ [ @@ -792,11 +73,11 @@ "Blog", 10 ] - ] + ], + "id" : "004" }, { "name" : "005", - "id" : "005", "data" : [ [ "Perl", @@ -810,9 +91,11 @@ "Blog", 12 ] - ] + ], + "id" : "005" }, { + "id" : "006", "data" : [ [ "Perl", @@ -827,10 +110,10 @@ 7 ] ], - "id" : "006", "name" : "006" }, { + "name" : "007", "data" : [ [ "Perl", @@ -845,8 +128,7 @@ 10 ] ], - "id" : "007", - "name" : "007" + "id" : "007" }, { "data" : [ @@ -863,11 +145,10 @@ 12 ] ], - "name" : "008", - "id" : "008" + "id" : "008", + "name" : "008" }, { - "id" : "009", "name" : "009", "data" : [ [ @@ -882,9 +163,11 @@ "Blog", 13 ] - ] + ], + "id" : "009" }, { + "name" : "010", "data" : [ [ "Perl", @@ -899,12 +182,9 @@ 11 ] ], - "id" : "010", - "name" : "010" + "id" : "010" }, { - "id" : "011", - "name" : "011", "data" : [ [ "Perl", @@ -918,11 +198,12 @@ "Blog", 10 ] - ] + ], + "id" : "011", + "name" : "011" }, { "id" : "012", - "name" : "012", "data" : [ [ "Perl", @@ -936,9 +217,11 @@ "Blog", 11 ] - ] + ], + "name" : "012" }, { + "name" : "013", "data" : [ [ "Perl", @@ -953,10 +236,10 @@ 13 ] ], - "id" : "013", - "name" : "013" + "id" : "013" }, { + "name" : "014", "data" : [ [ "Perl", @@ -971,11 +254,9 @@ 15 ] ], - "name" : "014", "id" : "014" }, { - "id" : "015", "name" : "015", "data" : [ [ @@ -990,11 +271,11 @@ "Blog", 15 ] - ] + ], + "id" : "015" }, { "id" : "016", - "name" : "016", "data" : [ [ "Perl", @@ -1008,9 +289,11 @@ "Blog", 12 ] - ] + ], + "name" : "016" }, { + "name" : "017", "data" : [ [ "Perl", @@ -1025,10 +308,10 @@ 12 ] ], - "name" : "017", "id" : "017" }, { + "id" : "018", "data" : [ [ "Perl", @@ -1043,10 +326,10 @@ 14 ] ], - "name" : "018", - "id" : "018" + "name" : "018" }, { + "id" : "019", "data" : [ [ "Perl", @@ -1061,10 +344,10 @@ 13 ] ], - "id" : "019", "name" : "019" }, { + "name" : "020", "data" : [ [ "Perl", @@ -1079,11 +362,9 @@ 13 ] ], - "name" : "020", "id" : "020" }, { - "id" : "021", "name" : "021", "data" : [ [ @@ -1098,7 +379,8 @@ "Blog", 10 ] - ] + ], + "id" : "021" }, { "data" : [ @@ -1115,11 +397,10 @@ 10 ] ], - "name" : "022", - "id" : "022" + "id" : "022", + "name" : "022" }, { - "id" : "023", "name" : "023", "data" : [ [ @@ -1134,9 +415,11 @@ "Blog", 12 ] - ] + ], + "id" : "023" }, { + "name" : "024", "data" : [ [ "Perl", @@ -1151,12 +434,10 @@ 11 ] ], - "id" : "024", - "name" : "024" + "id" : "024" }, { "id" : "025", - "name" : "025", "data" : [ [ "Perl", @@ -1170,7 +451,8 @@ "Blog", 12 ] - ] + ], + "name" : "025" }, { "name" : "026", @@ -1191,6 +473,7 @@ ] }, { + "id" : "027", "data" : [ [ "Perl", @@ -1205,10 +488,10 @@ 9 ] ], - "name" : "027", - "id" : "027" + "name" : "027" }, { + "name" : "028", "data" : [ [ "Perl", @@ -1223,12 +506,11 @@ 9 ] ], - "name" : "028", "id" : "028" }, { - "id" : "029", "name" : "029", + "id" : "029", "data" : [ [ "Perl", @@ -1246,7 +528,6 @@ }, { "name" : "030", - "id" : "030", "data" : [ [ "Perl", @@ -1260,11 +541,10 @@ "Blog", 10 ] - ] + ], + "id" : "030" }, { - "id" : "031", - "name" : "031", "data" : [ [ "Perl", @@ -1278,11 +558,12 @@ "Blog", 9 ] - ] + ], + "id" : "031", + "name" : "031" }, { "name" : "032", - "id" : "032", "data" : [ [ "Perl", @@ -1296,7 +577,8 @@ "Blog", 10 ] - ] + ], + "id" : "032" }, { "data" : [ @@ -1317,7 +599,6 @@ "name" : "033" }, { - "id" : "034", "name" : "034", "data" : [ [ @@ -1332,11 +613,11 @@ "Blog", 11 ] - ] + ], + "id" : "034" }, { "id" : "035", - "name" : "035", "data" : [ [ "Perl", @@ -1350,11 +631,10 @@ "Blog", 9 ] - ] + ], + "name" : "035" }, { - "id" : "036", - "name" : "036", "data" : [ [ "Perl", @@ -1368,9 +648,13 @@ "Blog", 11 ] - ] + ], + "id" : "036", + "name" : "036" }, { + "name" : "037", + "id" : "037", "data" : [ [ "Perl", @@ -1384,12 +668,9 @@ "Blog", 9 ] - ], - "name" : "037", - "id" : "037" + ] }, { - "id" : "038", "name" : "038", "data" : [ [ @@ -1404,7 +685,8 @@ "Blog", 12 ] - ] + ], + "id" : "038" }, { "data" : [ @@ -1421,10 +703,12 @@ 12 ] ], - "name" : "039", - "id" : "039" + "id" : "039", + "name" : "039" }, { + "name" : "040", + "id" : "040", "data" : [ [ "Perl", @@ -1438,9 +722,7 @@ "Blog", 10 ] - ], - "name" : "040", - "id" : "040" + ] }, { "name" : "041", @@ -1462,7 +744,6 @@ }, { "id" : "042", - "name" : "042", "data" : [ [ "Perl", @@ -1476,11 +757,12 @@ "Blog", 11 ] - ] + ], + "name" : "042" }, { - "id" : "043", "name" : "043", + "id" : "043", "data" : [ [ "Perl", @@ -1497,7 +779,6 @@ ] }, { - "id" : "044", "name" : "044", "data" : [ [ @@ -1512,9 +793,11 @@ "Blog", 11 ] - ] + ], + "id" : "044" }, { + "id" : "045", "data" : [ [ "Perl", @@ -1529,12 +812,10 @@ 11 ] ], - "id" : "045", "name" : "045" }, { "name" : "046", - "id" : "046", "data" : [ [ "Perl", @@ -1548,9 +829,11 @@ "Blog", 10 ] - ] + ], + "id" : "046" }, { + "name" : "047", "data" : [ [ "Perl", @@ -1565,10 +848,11 @@ 10 ] ], - "id" : "047", - "name" : "047" + "id" : "047" }, { + "name" : "048", + "id" : "048", "data" : [ [ "Perl", @@ -1582,11 +866,10 @@ "Blog", 12 ] - ], - "id" : "048", - "name" : "048" + ] }, { + "id" : "049", "data" : [ [ "Perl", @@ -1601,11 +884,9 @@ 12 ] ], - "name" : "049", - "id" : "049" + "name" : "049" }, { - "id" : "050", "name" : "050", "data" : [ [ @@ -1620,7 +901,8 @@ "Blog", 12 ] - ] + ], + "id" : "050" }, { "data" : [ @@ -1642,7 +924,6 @@ }, { "id" : "052", - "name" : "052", "data" : [ [ "Perl", @@ -1656,9 +937,11 @@ "Blog", 14 ] - ] + ], + "name" : "052"