From 3ab8077572bab376dce07950aeb7bcb0331528ee Mon Sep 17 00:00:00 2001 From: Mohammad S Anwar Date: Sun, 10 Jul 2022 18:49:27 +0100 Subject: - Added solutions by Colin Crain. --- challenge-172/colin-crain/blog.txt | 1 + challenge-172/colin-crain/perl/ch-1.pl | 89 + challenge-172/colin-crain/perl/ch-2.pl | 224 + stats/pwc-current.json | 423 +- stats/pwc-language-breakdown-summary.json | 82 +- stats/pwc-language-breakdown.json | 6776 ++++++++++++++--------------- stats/pwc-leaders.json | 402 +- stats/pwc-summary-1-30.json | 104 +- stats/pwc-summary-121-150.json | 94 +- stats/pwc-summary-151-180.json | 26 +- stats/pwc-summary-181-210.json | 94 +- stats/pwc-summary-211-240.json | 126 +- stats/pwc-summary-241-270.json | 84 +- stats/pwc-summary-31-60.json | 110 +- stats/pwc-summary-61-90.json | 30 +- stats/pwc-summary-91-120.json | 38 +- stats/pwc-summary.json | 570 +-- 17 files changed, 4803 insertions(+), 4470 deletions(-) create mode 100644 challenge-172/colin-crain/blog.txt create mode 100755 challenge-172/colin-crain/perl/ch-1.pl create mode 100755 challenge-172/colin-crain/perl/ch-2.pl diff --git a/challenge-172/colin-crain/blog.txt b/challenge-172/colin-crain/blog.txt new file mode 100644 index 0000000000..cea4301c54 --- /dev/null +++ b/challenge-172/colin-crain/blog.txt @@ -0,0 +1 @@ +https://colincrain.com/2022/07/10/five-finger-stat-punch diff --git a/challenge-172/colin-crain/perl/ch-1.pl b/challenge-172/colin-crain/perl/ch-1.pl new file mode 100755 index 0000000000..7013c0b1a7 --- /dev/null +++ b/challenge-172/colin-crain/perl/ch-1.pl @@ -0,0 +1,89 @@ +#!/Users/colincrain/perl5/perlbrew/perls/perl-5.32.0/bin/perl +# +# partings-in-the-prime-of-life.pl +# +# Prime Partition +# Submitted by: Mohammad S Anwar +# You are given two positive integers, $m and $n. +# +# Write a script to find out the Prime Partition of the given number. +# No duplicates allowed. +# +# For example, +# +# Input: $m = 18, $n = 2 +# Output: 5, 13 or 7, 11 +# +# Input: $m = 19, $n = 3 +# Output: 3, 5, 11 + +# method: +# +# A decidedly non trivial problem for a first task this week! +# +# Prime partitioning is a decidely complex math problem, and it +# seems the only easily-managed, albeit computationallyexpensive +# solution is to investigate all patterns of or the list of primes +# smaller than the target number to see whether they can be summed +# to resolve correctly. +# +# As the resulting lists will be of largely-unknownn and of variable +# lengths, a recursive solution is warranted. A prime is +# added to a partial list, a partial sum is accumulated, and then +# the partial pattern and sum are handed to the routine again, this +# time searching for a new target properly reduced by the prime +# that was added. +# + +# +# © 2022 colin crain +## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## + + + +use warnings; +use strict; +use utf8; +use feature ":5.26"; +use feature qw(signatures); +no warnings 'experimental::signatures'; + +use List::Util qw( sum0 ); + +my $target = shift @ARGV // 19; + +our @parts; +my @prime_list = sieve( $target ); + +pparts( $target, 0, \@prime_list, [] ); + +say "$_->@*" for @parts; + + +## subs + +sub pparts( $target, $sum, $primes, $try ) { +## recursive partions using only prime values from given list +## alters global @parts array to record results + push @parts, $try and return if $sum == $target; + return if $primes->@* == 0; + + for my $p ( $primes->@* ) { + my $new_sum = $sum + $p; + my @new_primes = grep { + $p < $_ && $new_sum + $_ <= $target + } $primes->@*; + pparts( $target, $new_sum, \@new_primes, [$try->@*, $p]); + } +} + +sub sieve ($limit) { +## sieve of Eratosthenes + my @s = (1) x $limit; + @s[0,1] = (0,0); + for my $f (2..sqrt($limit)) { + $s[$f * $_] = 0 for $f..$limit/$f; + } + return grep { $s[$_] } (0..$limit); +} + diff --git a/challenge-172/colin-crain/perl/ch-2.pl b/challenge-172/colin-crain/perl/ch-2.pl new file mode 100755 index 0000000000..e6db3669a8 --- /dev/null +++ b/challenge-172/colin-crain/perl/ch-2.pl @@ -0,0 +1,224 @@ +#!/Users/colincrain/perl5/perlbrew/perls/perl-5.32.0/bin/perl +# +# five-finger-stat-punch.pl +# +# Five-number Summary +# Submitted by: Mohammad S Anwar +# You are given an array of integers. +# +# Write a script to compute the five-number summary of the given +# set of integers. +# +# You can find the definition and example in the +# [wikipedia page](https://en.wikipedia.org/wiki/Five-number_summary). +# +# BACKGROUND +# +# In statistics, mathematical analysis is performed on what are +# large datasets. In this analysis, individual data points are +# deemphasized, and we look beyond the individual values in an +# effort to infer general statements about the collection as a +# whole. The data itself is usually empirical in origin, gathered +# from real-world phenomena, and as such are always subject to some +# degree of collection or recording error. Much of statistical +# analysis addresses the precision within the dataset, assigning +# numerical weights to the confidence in the values, which can be +# mathematically extrapolated as a caveat onto any conclusions +# made. The analysis, after all, can only be as good as the data it +# comes from. +# +# Given some collection of data, when seeking a normal, +# representative, middle value, it might not be immediately obvious +# that this idea can be approached in more than one way. There are +# in fact quite a few. We could for instance find an arithmetic +# average, a mean value, summing and dividing, but that is only one +# of several mean values available to us. We explored this idea in +# PWC157, calculating the Pythagorean Means. Ultimately the +# derivation of the data itself determines the best fit for the +# job. +# +# But even the average, an average, isn't necessarily meaningfully +# representative. Another thing we could look at is what value +# occurs most often. To take an extreme case, if the data isn't +# numerically related at all this can be a better way to summarize, +# obviously. If one number keeps showing up there is presumably +# some reason to be inferred. +# +# One somewhat radical approach to select a representative sample +# is to order the data and take the literal middle value. +# Arithmetically this doesn't make much sense, but statistically it +# does, as one unexpected benefit of this method is its remarkable +# resiliency against spurious, outlier data points. +# +# Given a collection of values of human heights, one might expect a +# range between extremes, with babies at maybe 30cm and large +# adults at somewhat over 200cm. Averaging all of these might tell +# you something, but I'm not sure what. Depending on how many +# babies are involved the number might be around say, 150cm? Just +# guessing here. However a single data entry error for the +# kilometers traveled on business for a year: 5000km, would not +# only make that average useless but also poison any further use of +# the value downstream. Using a median, though, the bad outlier +# data would only move the central element slightly, with about +# equal probability up or down. Our monsterous error has been +# transformed into a slight loss of precision. +# +# The quartitles are an extension of this data-levelling idea into +# two more subdivisions on either side of the median, to slot in +# and combine with the median to provide points at 25%, 50%, and +# 75%. Exactly how these points are arrived at is not universally +# decided. +# +# The problem arrives when we wish to take the median of one-half +# the data. If the whole set has a discrete median, do we include +# that when calculating one-half the data? Including it will make +# each computed half slightly larger than a real half, and not +# including it will make the cut smaller. There are more exact +# methods to accommodate more even division but we have to stop and +# consider the imprecision of the median itself before we make +# things more unnecessarily more complicated. Uncertainty carries +# over through the calculations, and the median is not the mean. +# +# It should be added that should we require a rigorous mathematical +# certainty there are well-defined approaches to looking at the way +# data is distributed within a range, such as the standard +# deviation. So we have that if we want it. On the other hand if +# we're looking for the middle, a representative low number, a +# representative high number, and a set of outer boundaries that +# all the data lies inside, then the 5-number summary has proven to +# be a pretty practical start at getting the feel of a dataset Ñ +# arithmetically imperfect as it may be. +# +# METHOD +# +# Depending on whether the number of elements under consideration +# is even or odd, to find the median we either select the center +# element from the list or average the two elements either side of +# the center. In this simplest case of an arithmetic mean we add +# the two values and divide by 2. +# +# Then, depending on whether the left and right Ñ equal Ñ sides +# around the median have an even or odd count we need to again +# select either a discrete center element or average the two +# surrounding. +# +# Because again there oddly is no rigorous consistency in defining +# the calculation of the 1st and 3rd quartiles, and these differing +# approaches result in differing outcomes, we will need to pick +# one. We will use the common method of halving the array if the +# median point lies between two values, and if the median is a +# discreet element not including it in the half-array length. +# +# We are left with four cases to evaluate, for each of the four +# combinations of even and odd numbers of data points in both the +# full dataset and our chosen determined half-size. +# +# I still find it exceedingly odd that the method for determining +# the 25% and 75% medians, if you will, are not well-defined. +# However in the statistical context of the summary, a closer look +# suggests an essentially parallel ambiguity in what we want from +# our middle value. So in a weird way the ambiguity is consistent. +# +# After all, the statistics are based on the median, not the mean. + +# © 2022 colin crain +## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## + + + +use warnings; +use strict; +use utf8; +use feature ":5.26"; +use feature qw(signatures); +no warnings 'experimental::signatures'; + + +my @arr = @ARGV; + +## default data array +@arr == 0 and @arr = (1,2,3,4,5,6,7,8,9); + + +## main +@arr = sort { $a <=> $b } @arr; +say " Data Values: [ @arr ]\n"; +my @five = ( $arr[0], quartiles(\@arr), $arr[-1] ); +my @names = ( "Minimum", "1st Quartile", "Median", "3rd Quartile", "Maximum" ); +say sprintf "%12s: %-s", $names[$_], $five[$_] for (0..4); + + +## subs +sub quartiles ( $arr ) { + my $count = scalar $arr->@*; + my $half = int($count/2); ## note integer truncation + + my ($q1, $q2, $q3); + if ( $count & 1 ) { ## odd num elements + $q2 = $arr->[$half]; + if ( $half & 1 ) { ## odd halfway index + $q1 = $arr->[$half/2]; + $q3 = $arr->[$half + $half/2 + 1]; + } + else { ## odd halfway index + $q1 = avg($arr->[$half/2-1], $arr->[$half/2]); + $q3 = avg($arr->[$half+$half/2], $arr->[$half+$half/2+1]); + } + } + else { ## even num elements + $q2 = avg($arr->[$half-1], $arr->[$half]); + if ( $half & 1 ) { ## odd halfway index + $q1 = $arr->[$half/2]; + $q3 = $arr->[$half + $half/2]; + } + else { ## even halfway index + $q1 = avg($arr->[$half/2-1], $arr->[$half/2]); + $q3 = avg($arr->[$half+$half/2-1], $arr->[$half+$half/2]); + } + } + + return ( $q1, $q2, $q3 ); +} + +sub avg( $n1, $n2 ) { + return ($n1 + $n2)/2; +} + +=cut + +the four cases, broken down: + +(array length, computed half-array length) + +ODD,EVEN +[0, 1, 2, 3, 4, 5, 6, 7, 8] +count = 9 +half = 4 +q2 = half +q1 = (1+2)/2 = avg(half/2-1, half/2) +q3 = (6+7)/2 = avg(half/2+half, half/2+half+1) + +EVEN,EVEN +[0, 1, 2, 3, 4, 5, 6, 7] +count = 8 +half = 4 +q2 = avg(half-1,half) +q1=(1+2)/2 = avg(half/2-1, half/2) +q3=(5+6)/2 = avg(half/2+half-1, half/2+half) + +ODD,ODD +[0, 1, 2, 3, 4, 5, 6] +count = 7 +half = 3 +q2 = 3 = half +q1 = 1 = half/2 +q3 = 5 = half + half/2 + 1 + +EVEN,ODD +[0, 1, 2, 3, 4, 5] +count = 6 +half = 3 +q2 = avg(half-1,half) +q1 = 1 = half/2 +q3 = 4 = half + half/2 + diff --git a/stats/pwc-current.json b/stats/pwc-current.json index 1dc7baad71..742b2139c0 100644 --- a/stats/pwc-current.json +++ b/stats/pwc-current.json @@ -1,8 +1,174 @@ { + "legend" : { + "enabled" : 0 + }, + "title" : { + "text" : "The Weekly Challenge - 172" + }, + "subtitle" : { + "text" : "[Champions: 26] Last updated at 2022-07-10 17:46:09 GMT" + }, + "plotOptions" : { + "series" : { + "borderWidth" : 0, + "dataLabels" : { + "format" : "{point.y}", + "enabled" : 1 + } + } + }, + "yAxis" : { + "title" : { + "text" : "Total Solutions" + } + }, + "series" : [ + { + "colorByPoint" : 1, + "data" : [ + { + "drilldown" : "Arne Sommer", + "name" : "Arne Sommer", + "y" : 3 + }, + { + "name" : "Athanasius", + "y" : 4, + "drilldown" : "Athanasius" + }, + { + "drilldown" : "Cheok-Yin Fung", + "y" : 1, + "name" : "Cheok-Yin Fung" + }, + { + "drilldown" : "Colin Crain", + "y" : 3, + "name" : "Colin Crain" + }, + { + "name" : "Dario Mazzeo", + "y" : 1, + "drilldown" : "Dario Mazzeo" + }, + { + "y" : 2, + "name" : "E. Choroba", + "drilldown" : "E. Choroba" + }, + { + "name" : "Flavio Poletti", + "y" : 6, + "drilldown" : "Flavio Poletti" + }, + { + "y" : 3, + "name" : "James Smith", + "drilldown" : "James Smith" + }, + { + "y" : 1, + "name" : "Jan Krnavek", + "drilldown" : "Jan Krnavek" + }, + { + "name" : "Jorg Sommrey", + "y" : 2, + "drilldown" : "Jorg Sommrey" + }, + { + "name" : "Kjetil Skotheim", + "y" : 2, + "drilldown" : "Kjetil Skotheim" + }, + { + "y" : 5, + "name" : "Laurent Rosenfeld", + "drilldown" : "Laurent Rosenfeld" + }, + { + "drilldown" : "Lubos Kolouch", + "name" : "Lubos Kolouch", + "y" : 2 + }, + { + "y" : 2, + "name" : "Mark Anderson", + "drilldown" : "Mark Anderson" + }, + { + "y" : 2, + "name" : "Mohammad S Anwar", + "drilldown" : "Mohammad S Anwar" + }, + { + "drilldown" : "Peter Campbell Smith", + "name" : "Peter Campbell Smith", + "y" : 3 + }, + { + "y" : 1, + "name" : "Philippe Bricout", + "drilldown" : "Philippe Bricout" + }, + { + "name" : "PokGoPun", + "y" : 2, + "drilldown" : "PokGoPun" + }, + { + "drilldown" : "Robert DiCicco", + "name" : "Robert DiCicco", + "y" : 4 + }, + { + "drilldown" : "Robert Ransbottom", + "name" : "Robert Ransbottom", + "y" : 2 + }, + { + "y" : 5, + "name" : "Roger Bell_West", + "drilldown" : "Roger Bell_West" + }, + { + "y" : 3, + "name" : "Simon Green", + "drilldown" : "Simon Green" + }, + { + "drilldown" : "Stephen G Lynn", + "name" : "Stephen G Lynn", + "y" : 5 + }, + { + "y" : 4, + "name" : "Ulrich Rieke", + "drilldown" : "Ulrich Rieke" + }, + { + "drilldown" : "W. Luis Mochan", + "y" : 3, + "name" : "W. Luis Mochan" + }, + { + "drilldown" : "Walt Mankowski", + "name" : "Walt Mankowski", + "y" : 2 + } + ], + "name" : "The Weekly Challenge - 172" + } + ], + "tooltip" : { + "followPointer" : 1, + "pointFormat" : "{point.name}: {point.y:f}
", + "headerFormat" : "{series.name}
" + }, "drilldown" : { "series" : [ { - "id" : "Arne Sommer", + "name" : "Arne Sommer", "data" : [ [ "Raku", @@ -13,10 +179,9 @@ 1 ] ], - "name" : "Arne Sommer" + "id" : "Arne Sommer" }, { - "name" : "Athanasius", "id" : "Athanasius", "data" : [ [ @@ -27,27 +192,42 @@ "Raku", 2 ] - ] + ], + "name" : "Athanasius" }, { "id" : "Cheok-Yin Fung", + "name" : "Cheok-Yin Fung", + "data" : [ + [ + "Perl", + 1 + ] + ] + }, + { + "name" : "Colin Crain", "data" : [ [ "Perl", + 2 + ], + [ + "Blog", 1 ] ], - "name" : "Cheok-Yin Fung" + "id" : "Colin Crain" }, { + "name" : "Dario Mazzeo", "data" : [ [ "Perl", 1 ] ], - "id" : "Dario Mazzeo", - "name" : "Dario Mazzeo" + "id" : "Dario Mazzeo" }, { "data" : [ @@ -56,12 +236,12 @@ 2 ] ], - "id" : "E. Choroba", - "name" : "E. Choroba" + "name" : "E. Choroba", + "id" : "E. Choroba" }, { - "name" : "Flavio Poletti", "id" : "Flavio Poletti", + "name" : "Flavio Poletti", "data" : [ [ "Perl", @@ -78,7 +258,6 @@ ] }, { - "name" : "James Smith", "data" : [ [ "Perl", @@ -89,41 +268,42 @@ 1 ] ], + "name" : "James Smith", "id" : "James Smith" }, { - "name" : "Jan Krnavek", + "id" : "Jan Krnavek", "data" : [ [ "Raku", 1 ] ], - "id" : "Jan Krnavek" + "name" : "Jan Krnavek" }, { - "id" : "Jorg Sommrey", + "name" : "Jorg Sommrey", "data" : [ [ "Perl", 2 ] ], - "name" : "Jorg Sommrey" + "id" : "Jorg Sommrey" }, { + "id" : "Kjetil Skotheim", "name" : "Kjetil Skotheim", "data" : [ [ "Perl", 2 ] - ], - "id" : "Kjetil Skotheim" + ] }, { - "name" : "Laurent Rosenfeld", "id" : "Laurent Rosenfeld", + "name" : "Laurent Rosenfeld", "data" : [ [ "Perl", @@ -140,28 +320,27 @@ ] }, { - "id" : "Lubos Kolouch", + "name" : "Lubos Kolouch", "data" : [ [ "Perl", 2 ] ], - "name" : "Lubos Kolouch" + "id" : "Lubos Kolouch" }, { + "id" : "Mark Anderson", + "name" : "Mark Anderson", "data" : [ [ "Raku", 2 ] - ], - "id" : "Mark Anderson", - "name" : "Mark Anderson" + ] }, { "name" : "Mohammad S Anwar", - "id" : "Mohammad S Anwar", "data" : [ [ "Perl", @@ -171,7 +350,8 @@ "Raku", 1 ] - ] + ], + "id" : "Mohammad S Anwar" }, { "name" : "Peter Campbell Smith", @@ -188,24 +368,24 @@ "id" : "Peter Campbell Smith" }, { - "id" : "Philippe Bricout", "data" : [ [ "Perl", 1 ] ], - "name" : "Philippe Bricout" + "name" : "Philippe Bricout", + "id" : "Philippe Bricout" }, { - "id" : "PokGoPun", "data" : [ [ "Perl", 2 ] ], - "name" : "PokGoPun" + "name" : "PokGoPun", + "id" : "PokGoPun" }, { "data" : [ @@ -218,20 +398,22 @@ 2 ] ], - "id" : "Robert DiCicco", - "name" : "Robert DiCicco" + "name" : "Robert DiCicco", + "id" : "Robert DiCicco" }, { - "name" : "Robert Ransbottom", "id" : "Robert Ransbottom", "data" : [ [ "Raku", 2 ] - ] + ], + "name" : "Robert Ransbottom" }, { + "id" : "Roger Bell_West", + "name" : "Roger Bell_West", "data" : [ [ "Perl", @@ -245,11 +427,10 @@ "Blog", 1 ] - ], - "id" : "Roger Bell_West", - "name" : "Roger Bell_West" + ] }, { + "id" : "Simon Green", "name" : "Simon Green", "data" : [ [ @@ -260,10 +441,10 @@ "Blog", 1 ] - ], - "id" : "Simon Green" + ] }, { + "id" : "Stephen G Lynn", "data" : [ [ "Perl", @@ -278,7 +459,6 @@ 1 ] ], - "id" : "Stephen G Lynn", "name" : "Stephen G Lynn" }, { @@ -311,181 +491,20 @@ }, { "id" : "Walt Mankowski", + "name" : "Walt Mankowski", "data" : [ [ "Perl", 2 ] - ], - "name" : "Walt Mankowski" + ] } ] }, "chart" : { "type" : "column" }, - "yAxis" : { - "title" : { - "text" : "Total Solutions" - } - }, - "subtitle" : { - "text" : "[Champions: 25] Last updated at 2022-07-10 15:17:47 GMT" - }, - "legend" : { - "enabled" : 0 - }, "xAxis" : { "type" : "category" - }, - "series" : [ - { - "colorByPoint" : 1, - "name" : "The Weekly Challenge - 172", - "data" : [ - { - "drilldown" : "Arne Sommer", - "y" : 3, - "name" : "Arne Sommer" - }, - { - "name" : "Athanasius", - "drilldown" : "Athanasius", - "y" : 4 - }, - { - "y" : 1, - "drilldown" : "Cheok-Yin Fung", - "name" : "Cheok-Yin Fung" - }, - { - "drilldown" : "Dario Mazzeo", - "y" : 1, - "name" : "Dario Mazzeo" - }, - { - "name" : "E. Choroba", - "y" : 2, - "drilldown" : "E. Choroba" - }, - { - "drilldown" : "Flavio Poletti", - "y" : 6, - "name" : "Flavio Poletti" - }, - { - "name" : "James Smith", - "drilldown" : "James Smith", - "y" : 3 - }, - { - "name" : "Jan Krnavek", - "drilldown" : "Jan Krnavek", - "y" : 1 - }, - { - "y" : 2, - "drilldown" : "Jorg Sommrey", - "name" : "Jorg Sommrey" - }, - { - "name" : "Kjetil Skotheim", - "y" : 2, - "drilldown" : "Kjetil Skotheim" - }, - { - "y" : 5, - "drilldown" : "Laurent Rosenfeld", - "name" : "Laurent Rosenfeld" - }, - { - "drilldown" : "Lubos Kolouch", - "y" : 2, - "name" : "Lubos Kolouch" - }, - { - "name" : "Mark Anderson", - "y" : 2, - "drilldown" : "Mark Anderson" - }, - { - "drilldown" : "Mohammad S Anwar", - "y" : 2, - "name" : "Mohammad S Anwar" - }, - { - "name" : "Peter Campbell Smith", - "drilldown" : "Peter Campbell Smith", - "y" : 3 - }, - { - "name" : "Philippe Bricout", - "drilldown" : "Philippe Bricout", - "y" : 1 - }, - { - "y" : 2, - "drilldown" : "PokGoPun", - "name" : "PokGoPun" - }, - { - "y" : 4, - "drilldown" : "Robert DiCicco", - "name" : "Robert DiCicco" - }, - { - "name" : "Robert Ransbottom", - "drilldown" : "Robert Ransbottom", - "y" : 2 - }, - { - "drilldown" : "Roger Bell_West", - "y" : 5, - "name" : "Roger Bell_West" - }, - { - "drilldown" : "Simon Green", - "y" : 3, - "name" : "Simon Green" - }, - { - "y" : 5, - "drilldown" : "Stephen G Lynn", - "name" : "Stephen G Lynn" - }, - { - "drilldown" : "Ulrich Rieke", - "y" : 4, - "name" : "Ulrich Rieke" - }, - { - "name" : "W. Luis Mochan", - "drilldown" : "W. Luis Mochan", - "y" : 3 - }, - { - "y" : 2, - "drilldown" : "Walt Mankowski", - "name" : "Walt Mankowski" - } - ] - } - ], - "tooltip" : { - "followPointer" : 1, - "headerFormat" : "{series.name}
", - "pointFormat" : "{point.name}: {point.y:f}
" - }, - "title" : { - "text" : "The Weekly Challenge - 172" - }, - "plotOptions" : { - "series" : { - "dataLabels" : { - "enabled" : 1, - "format" : "{point.y}" - }, - "borderWidth" : 0 - } } } diff --git a/stats/pwc-language-breakdown-summary.json b/stats/pwc-language-breakdown-summary.json index 6dadd4c0e3..6072ab6b9c 100644 --- a/stats/pwc-language-breakdown-summary.json +++ b/stats/pwc-language-breakdown-summary.json @@ -1,14 +1,45 @@ { + "yAxis" : { + "title" : { + "text" : null + }, + "min" : 0 + }, + "subtitle" : { + "text" : "Last updated at 2022-07-10 17:46:09 GMT" + }, + "legend" : { + "enabled" : "false" + }, + "title" : { + "text" : "The Weekly Challenge Contributions [2019 - 2022]" + }, + "xAxis" : { + "type" : "category", + "labels" : { + "style" : { + "fontSize" : "13px", + "fontFamily" : "Verdana, sans-serif" + } + } + }, + "chart" : { + "type" : "column" + }, + "tooltip" : { + "pointFormat" : "{point.y:.0f}" + }, "series" : [ { + "name" : "Contributions", "data" : [ [ "Blog", - 2684 + 2685 ], [ "Perl", - 8387 + 8389 ], [ "Raku", @@ -16,48 +47,17 @@ ] ], "dataLabels" : { - "align" : "right", + "enabled" : "true", + "y" : 10, "format" : "{point.y:.0f}", "rotation" : -90, - "enabled" : "true", + "align" : "right", + "color" : "#FFFFFF", "style" : { - "fontSize" : "13px", - "fontFamily" : "Verdana, sans-serif" - }, - "y" : 10, - "color" : "#FFFFFF" - }, - "name" : "Contributions" - } - ], - "xAxis" : { - "type" : "category", - "labels" : { - "style" : { - "fontFamily" : "Verdana, sans-serif", - "fontSize" : "13px" + "fontFamily" : "Verdana, sans-serif", + "fontSize" : "13px" + } } } - }, - "tooltip" : { - "pointFormat" : "{point.y:.0f}" - }, - "title" : { - "text" : "The Weekly Challenge Contributions [2019 - 2022]" - }, - "subtitle" : { - "text" : "Last updated at 2022-07-10 15:17:47 GMT" - }, - "yAxis" : { - "title" : { - "text" : null - }, - "min" : 0 - }, - "chart" : { - "type" : "column" - }, - "legend" : { - "enabled" : "false" - } + ] } diff --git a/stats/pwc-language-breakdown.json b/stats/pwc-language-breakdown.json index af7b674c20..76564398f8 100644 --- a/stats/pwc-language-breakdown.json +++ b/stats/pwc-language-breakdown.json @@ -1,3120 +1,12 @@ { - "legend" : { - "enabled" : "false" - }, - "chart" : { - "type" : "column" - }, - "drilldown" : { - "series" : [ - { - "name" : "001", - "id" : "001", - "data" : [ - [ - "Perl", - 103 - ], - [ - "Raku", - 47 - ], - [ - "Blog", - 11 - ] - ] - }, - { - "data" : [ - [ - "Perl", - 79 - ], - [ - "Raku", - 36 - ], - [ - "Blog", - 10 - ] - ], - "id" : "002", - "name" : "002" - }, - { - "data" : [ - [ - "Perl", - 44 - ], - [ - "Raku", - 30 - ], - [ - "Blog", - 9 - ] - ], - "id" : "003", - "name" : "003" - }, - { - "name" : "004", - "data" : [ - [ - "Perl", - 56 - ], - [ - "Raku", - 33 - ], - [ - "Blog", - 10 - ] - ], - "id" : "004" - }, - { - "name" : "005", - "id" : "005", - "data" : [ - [ - "Perl", - 40 - ], - [ - "Raku", - 26 - ], - [ - "Blog", - 12 - ] - ] - }, - { - "name" : "006", - "id" : "006", - "data" : [ - [ - "Perl", - 33 - ], - [ - "Raku", - 18 - ], - [ - "Blog", - 7 - ] - ] - }, - { - "id" : "007", - "data" : [ - [ - "Perl", - 32 - ], - [ - "Raku", - 23 - ], - [ - "Blog", - 10 - ] - ], - "name" : "007" - }, - { - "data" : [ - [ - "Perl", - 44 - ], - [ - "Raku", - 22 - ], - [ - "Blog", - 12 - ] - ], - "id" : "008", - "name" : "008" - }, - { - "name" : "009", - "id" : "009", - "data" : [ - [ - "Perl", - 42 - ], - [ - "Raku", - 21 - ], - [ - "Blog", - 13 - ] - ] - }, - { - "name" : "010", - "id" : "010", - "data" : [ - [ - "Perl", - 35 - ], - [ - "Raku", - 19 - ], - [ - "Blog", - 11 - ] - ] - }, - { - "name" : "011", - "data" : [ - [ - "Perl", - 47 - ], - [ - "Raku", - 28 - ], - [ - "Blog", - 10 - ] - ], - "id" : "011" - }, - { - "name" : "012", - "data" : [ - [ - "Perl", - 48 - ], - [ - "Raku", - 30 - ], - [ - "Blog", - 11 - ] - ], - "id" : "012" - }, - { - "name" : "013", - "data" : [ - [ - "Perl", - 47 - ], - [ - "Raku", - 25 - ], - [ - "Blog", - 13 - ] - ], - "id" : "013" - }, - { - "data" : [ - [ - "Perl", - 55 - ], - [ - "Raku", - 31 - ], - [ - "Blog", - 15 - ] - ], - "id" : "014", - "name" : "014" - }, - { - "id" : "015", - "data" : [ - [ - "Perl", - 56 - ], - [ - "Raku", - 28 - ], - [ - "Blog", - 15 - ] - ], - "name" : "015" - }, - { - "name" : "016", - "id" : "016", - "data" : [ - [ - "Perl", - 36 - ], - [ - "Raku", - 23 - ], - [ - "Blog", - 12 - ] - ] - }, - { - "name" : "017", - "data" : [ - [ - "Perl", - 45 - ], - [ - "Raku", - 27 - ], - [ - "Blog", - 12 - ] - ], - "id" : "017" - }, - { - "name" : "018", - "data" : [ - [ - "Perl", - 36 - ], - [ - "Raku", - 31 - ], - [ - "Blog", - 14 - ] - ], - "id" : "018" - }, - { - "name" : "019", - "data" : [ - [ - "Perl", - 56 - ], - [ - "Raku", - 34 - ], - [ - "Blog", - 13 - ] - ], - "id" : "019" - }, - { - "name" : "020", - "data" : [ - [ - "Perl", - 51 - ], - [ - "Raku", - 37 - ], - [ - "Blog", - 13 - ] - ], - "id" : "020" - }, - { - "id" : "021", - "data" : [ - [ - "Perl", - 38 - ], - [ - "Raku", - 24 - ], - [ - "Blog", - 10 - ] - ], - "name" : "021" - }, - { - "id" : "022", - "data" : [ - [ - "Perl", - 35 - ], - [ - "Raku", - 23 - ], - [ - "Blog", - 10 - ] - ], - "name" : "022" - }, - { - "data" : [ - [ - "Perl", - 53 - ], - [ - "Raku", - 32 - ], - [ - "Blog", - 12 - ] - ], - "id" : "023", - "name" : "023" - }, - { - "data" : [ - [ - "Perl", - 38 - ], - [ - "Raku", - 26 - ], - [ - "Blog", - 11 - ] - ], - "id" : "024", - "name" : "024" - }, - { - "data" : [ - [ - "Perl", - 28 - ], - [ - "Raku", - 19 - ], - [ - "Blog", - 12 - ] - ], - "id" : "025", - "name" : "025" - }, - { - "name" : "026", - "data" : [ - [ - "Perl", - 35 - ], - [ - "Raku", - 29 - ], - [ - "Blog", - 10 - ] - ], - "id" : "026" - }, - { - "data" : [ - [ - "Perl", - 31 - ], - [ - "Raku", - 22 - ], - [ - "Blog", - 9 - ] - ], - "id" : "027", - "name" : "027" - }, - { - "data" : [ - [ - "Perl", - 47 - ], - [ - "Raku", - 26 - ], - [ - "Blog", - 9 - ] - ], - "id" : "028", - "name" : "028" - }, - { - "name" : "029", - "id" : "029", - "data" : [ - [ - "Perl", - 42 - ], - [ - "Raku", - 27 - ], - [ - "Blog", - 12 - ] - ] - }, - { - "name" : "030", - "id" : "030", - "data" : [ - [ - "Perl", - 76 - ], - [ - "Raku", - 33 - ], - [ - "Blog", - 10 - ] - ] - }, - { - "id" : "031", - "data" : [ - [ - "Perl", - 52 - ], - [ - "Raku", - 30 - ], - [ - "Blog", - 9 - ] - ], - "name" : "031" - }, - { - "name" : "032", - "data" : [ - [ - "Perl", - 59 - ], - [ - "Raku", - 27 - ], - [ - "Blog", - 10 - ] - ], - "id" : "032" - }, - { - "name" : "033", - "data" : [ - [ - "Perl", - 64 - ], - [ - "Raku", - 38 - ], - [ - "Blog", - 10 - ] - ], - "id" : "033" - }, - { - "id" : "034", - "data" : [ - [ - "Perl", - 32 - ], - [ - "Raku", - 23 - ], - [ - "Blog", - 11 - ] - ], - "name" : "034" - }, - { - "id" : "035", - "data" : [ - [ - "Perl", - 35 - ], - [ - "Raku", - 22 - ], - [ - "Blog", - 9 - ] - ], - "name" : "035" - }, - { - "id" : "036", - "data" : [ - [ - "Perl", - 37 - ], - [ - "Raku", - 22 - ], - [ - "Blog", - 11 - ] - ], - "name" : "036" - }, - { - "name" : "037", - "data" : [ - [ - "Perl", - 36 - ], - [ - "Raku", - 24 - ], - [ - "Blog", - 9 - ] - ], - "id" : "037" - }, - { - "name" : "038", - "data" : [ - [ - "Perl", - 34 - ], - [ - "Raku", - 24 - ], - [ - "Blog", - 12 - ] - ], - "id" : "038" - }, - { - "name" : "039", - "data" : [ - [ - "Perl", - 31 - ], - [ - "Raku", - 21 - ], - [ - "Blog", - 12 - ] - ], - "id" : "039" - }, - { - "data" : [ - [ - "Perl", - 41 - ], - [ - "Raku", - 24 - ], - [ - "Blog", - 10 - ] - ], - "id" : "040", - "name" : "040" - }, - { - "name" : "041", - "id" : "041", - "data" : [ - [ - "Perl", - 39 - ], - [ - "Raku", - 30 - ], - [ - "Blog", - 9 - ] - ] - }, - { - "name" : "042", - "data" : [ - [ - "Perl", - 49 - ], - [ - "Raku", - 34 - ], - [ - "Blog", - 11 - ] - ], - "id" : "042" - }, - { - "name" : "043", - "data" : [ - [ - "Perl", - 35 - ], - [ - "Raku", - 24 - ], - [ - "Blog", - 11 - ] - ], - "id" : "043" - }, - { - "id" : "044", - "data" : [ - [ - "Perl", - 43 - ], - [ - "Raku", - 33 - ], - [ - "Blog", - 11 - ] - ], - "name" : "044" - }, - { - "name" : "045", - "data" : [ - [ - "Perl", - 52 - ], - [ - "Raku", - 35 - ], - [ - "Blog", - 11 - ] - ], - "id" : "045" - }, - { - "id" : "046", - "data" : [ - [ - "Perl", - 46 - ], - [ - "Raku", - 33 - ], - [ - "Blog", - 10 - ] - ], - "name" : "046" - }, - { - "data" : [ - [ - "Perl", - 45 - ], - [ - "Raku", - 31 - ], - [ - "Blog", - 10 - ] - ], - "id" : "047", - "name" : "047" - }, - { - "id" : "048", - "data" : [ - [ - "Perl", - 61 - ], - [ - "Raku", - 37 - ], - [ - "Blog", - 12 - ] - ], - "name" : "048" - }, - { - "data" : [ - [ - "Perl", - 52 - ], - [ - "Raku", - 27 - ], - [ - "Blog", - 12 - ] - ], - "id" : "049", - "name" : "049" - }, - { - "data" : [ - [ - "Perl", - 52 - ], - [ - "Raku", - 36 - ], - [ - "Blog", - 12 - ] - ], - "id" : "050", - "name" : "050" - }, - { - "id" : "051", - "data" : [ - [ - "Perl", - 48 - ], - [ - "Raku", - 32 - ], - [ - "Blog", - 11 - ] - ], - "name" : "051" - }, - { - "name" : "052", - "data" : [ - [ - "Perl", - 47 - ], - [ - "Raku", - 32 - ], - [ - "Blog", - 14 - ] - ], - "id" : "052" - }, - { - "data" : [ - [ - "Perl", - 47 - ], - [ - "Raku", - 41 - ], - [ - "Blog", - 15 - ] - ], - "id" : "053", - "name" : "053" - }, - { - "id" : "054", - "data" : [ - [ - "Perl", - 47 - ], - [ - "Raku", - 40 - ], - [ - "Blog", - 18 - ] - ], - "name" : "054" - }, - { - "name" : "055", - "data" : [ - [ - "Perl", - 43 - ], - [ - "Raku", - 33 - ], - [ - "Blog", - 14 - ] - ], - "id" : "055" - }, - { - "name" : "056", - "id" : "056", - "data" : [ - [ - "Perl", - 49 - ], - [ - "Raku", - 32 - ], - [ - "Blog", - 16 - ] - ] - }, - { - "data" : [ - [ - "Perl", - 41 - ], - [ - "Raku", - 26 - ], - [ - "Blog", - 15 - ] - ], - "id" : "057", - "name" : "057" - }, - { - "id" : "058", - "data" : [ - [ - "Perl", - 35 - ], - [ - "Raku", - 23 - ], - [ - "Blog", - 13 - ] - ], - "name" : "058" - }, - { - "name" : "059", - "id" : "059", - "data" : [ - [ - "Perl", - 41 - ], - [ - "Raku", - 34 - ], - [ - "Blog", - 16 - ] - ] - }, - { - "id" : "060", - "data" : [ - [ - "Perl", - 41 - ], - [ - "Raku", - 30 - ], - [ - "Blog", - 16 - ] - ], - "name" : "060" - }, - { - "id" : "061", - "data" : [ - [ - "Perl", - 39 - ], - [ - "Raku", - 30 - ], - [ - "Blog", - 14 - ] - ], - "name" : "061" - }, - { - "name" : "062", - "id" : "062", - "data" : [ - [ - "Perl", - 30 - ], - [ - "Raku", - 19 - ], - [ - "Blog", - 11 - ] - ] - }, - { - "name" : "063", - "data" : [ - [ - "Perl", - 44 - ], - [ - "Raku", - 34 - ], - [ - "Blog", - 13 - ] - ], - "id" : "063" - }, - { - "data" : [ - [ - "Perl", - 37 - ], - [ - "Raku", - 29 - ], - [ - "Blog", - 16 - ] - ], - "id" : "064", - "name" : "064" - }, - { - "id" : "065", - "data" : [ - [ - "Perl", - 34 - ], - [ - "Raku", - 26 - ], - [ - "Blog", - 15 - ] - ], - "name" : "065" - }, - { - "name" : "066", - "data" : [ - [ - "Perl", - 41 - ], - [ - "Raku", - 31 - ], - [ - "Blog", - 14 - ] - ], - "id" : "066" - }, - { - "name" : "067", - "id" : "067", - "data" : [ - [ - "Perl", - 40 - ], - [ - "Raku", - 34 - ], - [ - "Blog", - 18 - ] - ] - }, - { - "data" : [ - [ - "Perl", - 35 - ], - [ - "Raku", - 29 - ], - [ - "Blog", - 13 - ] - ], - "id" : "068", - "name" : "068" - }, - { - "data" : [ - [ - "Perl", - 41 - ], - [ - "Raku", - 28 - ], - [ - "Blog", - 16 - ] - ], - "id" : "069", - "name" : "069" - }, - { - "name" : "070", - "data" : [ - [ - "Perl", - 44 - ], - [ - "Raku", - 34 - ], - [ - "Blog", - 17 - ] - ], - "id" : "070" - }, - { - "name" : "071", - "id" : "071", - "data" : [ - [ - "Perl", - 33 - ], - [ - "Raku", - 32 - ], - [ - "Blog", - 15 - ] - ] - }, - { - "name" : "072", - "id" : "072", - "data" : [ - [ - "Perl", - 53 - ], - [ - "Raku", - 42 - ], - [ - "Blog", - 19 - ] - ] - }, - { - "data" : [ - [ - "Perl", - 55 - ], - [ - "Raku", - 40 - ], - [ - "Blog", - 17 - ] - ], - "id" : "073", - "name" : "073" - }, - { - "data" : [ - [ - "Perl", - 58 - ], - [ - "Raku", - 39 - ], - [ - "Blog", - 20 - ] - ], - "id" : "074", - "name" : "074" - }, - { - "name" : "075", - "data" : [ - [ - "Perl", - 59 - ], - [ - "Raku", - 38 - ], - [ - "Blog", - 20 - ] - ], - "id" : "075" - }, - { - "name" : "076", - "data" : [ - [ - "Perl", - 53 - ], - [ - "Raku", - 32 - ], - [ - "Blog", - 16 - ] - ], - "id" : "076" - }, - { - "name" : "077", - "id" : "077", - "data" : [ - [ - "Perl", - 52 - ], - [ - "Raku", - 34 - ], - [ - "Blog", - 14 - ] - ] - }, - { - "data" : [ - [ - "Perl", - 68 - ], - [ - "Raku", - 41 - ], - [ - "Blog", - 18 - ] - ], - "id" : "078", - "name" : "078" - }, - { - "data" : [ - [ - "Perl", - 68 - ], - [ - "Raku", - 37 - ], - [ - "Blog", - 17 - ] - ], - "id" : "079", - "name" : "079" - }, - { - "data" : [ - [ - "Perl", - 75 - ], - [ - "Raku", - 36 - ], - [ - "Blog", - 16 - ] - ], - "id" : "080", - "name" : "080" - }, - { - "name" : "081", - "data" : [ - [ - "Perl", - 65 - ], - [ - "Raku", - 34 - ], - [ - "Blog", - 15 - ] - ], - "id" : "081" - }, - { - "id" : "082", - "data" : [ - [ - "Perl", - 62 - ], - [ - "Raku", - 35 - ], - [ - "Blog", - 17 - ] - ], - "name" : "082" - }, - { - "data" : [ - [ - "Perl", - 73 - ], - [ - "Raku", - 38 - ], - [ - "Blog", - 16 - ] - ], - "id" : "083", - "name" : "083" - }, - { - "data" : [ - [ - "Perl", - 71 -