From e709ea80940fda86b17b6f2f7817bdc6373b2565 Mon Sep 17 00:00:00 2001 From: Steven Date: Tue, 30 Jul 2024 15:59:33 +0100 Subject: add solutions week 280 in python --- challenge-280/steven-wilson/python/ch-1.py | 34 ++++++++++++++++++++++++++++++ challenge-280/steven-wilson/python/ch-2.py | 29 +++++++++++++++++++++++++ 2 files changed, 63 insertions(+) create mode 100644 challenge-280/steven-wilson/python/ch-1.py create mode 100644 challenge-280/steven-wilson/python/ch-2.py diff --git a/challenge-280/steven-wilson/python/ch-1.py b/challenge-280/steven-wilson/python/ch-1.py new file mode 100644 index 0000000000..dc4c9d8dab --- /dev/null +++ b/challenge-280/steven-wilson/python/ch-1.py @@ -0,0 +1,34 @@ +#!/usr/bin/env python3 + +from collections import Counter +from string import ascii_lowercase + + +def twice_appearance(string): + """ Given a string containing lowercase English letters only, return the + first letter that appears twice. + + >>> twice_appearance("acbddbca") + 'd' + >>> twice_appearance("abccd") + 'c' + >>> twice_appearance("abcdabbb") + 'a' + >>> twice_appearance("abcdefgh") + + """ + if any(c not in ascii_lowercase for c in string): + raise ValueError("String should contain only lowercase letters") + + counter = Counter() + for c in string: + counter[c] += 1 + if counter[c] == 2: + return c + return None + + +if __name__ == "__main__": + import doctest + + doctest.testmod(verbose=True) diff --git a/challenge-280/steven-wilson/python/ch-2.py b/challenge-280/steven-wilson/python/ch-2.py new file mode 100644 index 0000000000..8a833439c0 --- /dev/null +++ b/challenge-280/steven-wilson/python/ch-2.py @@ -0,0 +1,29 @@ +#!/usr/bin/env python3 + + +def count_asterisks(string): + """ Given a string, where every two consecutive vertical bars are grouped + into a pair, return the number of asterisks, *, excluding any between each + pair of vertical bars. + + >>> count_asterisks("p|*e*rl|w**e|*ekly|") + 2 + >>> count_asterisks("perl") + 0 + >>> count_asterisks("th|ewe|e**|k|l***ych|alleng|e") + 5 + """ + between = False + asterisks = 0 + for c in string: + if c == "|": + between = not between + if not between and c == "*": + asterisks += 1 + return asterisks + + +if __name__ == "__main__": + import doctest + + doctest.testmod(verbose=True) -- cgit From 72bea83e2380f0a794c3c9c515238eeadeba27f7 Mon Sep 17 00:00:00 2001 From: Mohammad Sajid Anwar Date: Tue, 30 Jul 2024 17:23:04 +0100 Subject: - Added solutions by Laurent Rosenfeld. --- challenge-280/laurent-rosenfeld/blog1.txt | 1 + challenge-280/laurent-rosenfeld/perl/ch-2.pl | 16 + challenge-280/laurent-rosenfeld/raku/ch-2.raku | 11 + stats/pwc-current.json | 164 +- stats/pwc-language-breakdown-2019.json | 310 ++-- stats/pwc-language-breakdown-2020.json | 366 ++--- stats/pwc-language-breakdown-2021.json | 744 ++++----- stats/pwc-language-breakdown-2022.json | 368 ++--- stats/pwc-language-breakdown-2023.json | 336 ++-- stats/pwc-language-breakdown-2024.json | 474 +++--- stats/pwc-language-breakdown-summary.json | 78 +- stats/pwc-leaders.json | 382 ++--- stats/pwc-summary-1-30.json | 34 +- stats/pwc-summary-121-150.json | 38 +- stats/pwc-summary-151-180.json | 124 +- stats/pwc-summary-181-210.json | 112 +- stats/pwc-summary-211-240.json | 120 +- stats/pwc-summary-241-270.json | 32 +- stats/pwc-summary-271-300.json | 102 +- stats/pwc-summary-301-330.json | 32 +- stats/pwc-summary-31-60.json | 42 +- stats/pwc-summary-61-90.json | 96 +- stats/pwc-summary-91-120.json | 108 +- stats/pwc-summary.json | 1936 ++++++++++++------------ stats/pwc-yearly-language-summary.json | 98 +- 25 files changed, 3076 insertions(+), 3048 deletions(-) create mode 100644 challenge-280/laurent-rosenfeld/blog1.txt create mode 100644 challenge-280/laurent-rosenfeld/perl/ch-2.pl create mode 100644 challenge-280/laurent-rosenfeld/raku/ch-2.raku diff --git a/challenge-280/laurent-rosenfeld/blog1.txt b/challenge-280/laurent-rosenfeld/blog1.txt new file mode 100644 index 0000000000..37e0bc06ca --- /dev/null +++ b/challenge-280/laurent-rosenfeld/blog1.txt @@ -0,0 +1 @@ +https://blogs.perl.org/users/laurent_r/2024/07/perl-weekly-challenge-280-count-asterisks.html diff --git a/challenge-280/laurent-rosenfeld/perl/ch-2.pl b/challenge-280/laurent-rosenfeld/perl/ch-2.pl new file mode 100644 index 0000000000..5eea17d71f --- /dev/null +++ b/challenge-280/laurent-rosenfeld/perl/ch-2.pl @@ -0,0 +1,16 @@ +use strict; +use warnings; +use feature 'say'; + +sub count_asterisks { + my $in = shift; + $in =~ s/\|.*?\|//g; + return +($in =~ tr/*//); +} + +my @tests = ("p|*e*rl|w**e|*ekly|", "perl", + "th|ewe|e**|k|l***ych|alleng|e"); +for my $test (@tests) { + printf "%-30s => ", $test; + say count_asterisks $test; +} diff --git a/challenge-280/laurent-rosenfeld/raku/ch-2.raku b/challenge-280/laurent-rosenfeld/raku/ch-2.raku new file mode 100644 index 0000000000..e1a53ec1d7 --- /dev/null +++ b/challenge-280/laurent-rosenfeld/raku/ch-2.raku @@ -0,0 +1,11 @@ +sub count-asterisks ($in is copy) { + $in ~~ s:g/'|'.*?'|'//; + return +($in ~~ tr/*//); +} + +my @tests = "p|*e*rl|w**e|*ekly|", "perl", + "th|ewe|e**|k|l***ych|alleng|e"; +for @tests -> $test { + printf "%-30s => ", $test; + say count-asterisks $test; +} diff --git a/stats/pwc-current.json b/stats/pwc-current.json index 54a74c42d6..6baa6bbbc4 100644 --- a/stats/pwc-current.json +++ b/stats/pwc-current.json @@ -1,30 +1,18 @@ { - "plotOptions" : { - "series" : { - "dataLabels" : { - "enabled" : 1, - "format" : "{point.y}" - }, - "borderWidth" : 0 - } - }, - "title" : { - "text" : "The Weekly Challenge - 280" - }, - "legend" : { - "enabled" : 0 + "xAxis" : { + "type" : "category" }, "drilldown" : { "series" : [ { + "name" : "Alexander Karelas", "data" : [ [ "Perl", 1 ] ], - "id" : "Alexander Karelas", - "name" : "Alexander Karelas" + "id" : "Alexander Karelas" }, { "name" : "Dave Jacoby", @@ -41,14 +29,14 @@ "id" : "Dave Jacoby" }, { + "name" : "David Ferrone", + "id" : "David Ferrone", "data" : [ [ "Perl", 2 ] - ], - "name" : "David Ferrone", - "id" : "David Ferrone" + ] }, { "name" : "E. Choroba", @@ -67,29 +55,30 @@ 2 ] ], - "name" : "Feng Chang", - "id" : "Feng Chang" + "id" : "Feng Chang", + "name" : "Feng Chang" }, { - "name" : "Laurent Rosenfeld", + "id" : "Laurent Rosenfeld", "data" : [ [ "Perl", - 1 + 2 ], [ "Raku", - 1 + 2 ], [ "Blog", - 1 + 2 ] ], - "id" : "Laurent Rosenfeld" + "name" : "Laurent Rosenfeld" }, { "name" : "Luca Ferrari", + "id" : "Luca Ferrari", "data" : [ [ "Raku", @@ -99,28 +88,27 @@ "Blog", 10 ] - ], - "id" : "Luca Ferrari" + ] }, { + "name" : "Mark Anderson", + "id" : "Mark Anderson", "data" : [ [ "Raku", 2 ] - ], - "id" : "Mark Anderson", - "name" : "Mark Anderson" + ] }, { "name" : "Matthew Neleigh", + "id" : "Matthew Neleigh", "data" : [ [ "Perl", 2 ] - ], - "id" : "Matthew Neleigh" + ] }, { "data" : [ @@ -129,11 +117,10 @@ 2 ] ], - "name" : "Peter Meszaros", - "id" : "Peter Meszaros" + "id" : "Peter Meszaros", + "name" : "Peter Meszaros" }, { - "id" : "Robbie Hatley", "data" : [ [ "Perl", @@ -144,9 +131,11 @@ 1 ] ], + "id" : "Robbie Hatley", "name" : "Robbie Hatley" }, { + "name" : "Thomas Kohler", "data" : [ [ "Perl", @@ -157,7 +146,6 @@ 2 ] ], - "name" : "Thomas Kohler", "id" : "Thomas Kohler" }, { @@ -171,8 +159,8 @@ 2 ] ], - "name" : "Ulrich Rieke", - "id" : "Ulrich Rieke" + "id" : "Ulrich Rieke", + "name" : "Ulrich Rieke" }, { "id" : "W. Luis Mochan", @@ -190,28 +178,59 @@ } ] }, + "plotOptions" : { + "series" : { + "borderWidth" : 0, + "dataLabels" : { + "enabled" : 1, + "format" : "{point.y}" + } + } + }, + "legend" : { + "enabled" : 0 + }, + "title" : { + "text" : "The Weekly Challenge - 280" + }, + "yAxis" : { + "title" : { + "text" : "Total Solutions" + } + }, + "subtitle" : { + "text" : "[Champions: 14] Last updated at 2024-07-30 16:23:00 GMT" + }, + "chart" : { + "type" : "column" + }, + "tooltip" : { + "followPointer" : 1, + "pointFormat" : "{point.name}: {point.y:f}
", + "headerFormat" : "{series.name}
" + }, "series" : [ { "data" : [ { - "drilldown" : "Alexander Karelas", + "name" : "Alexander Karelas", "y" : 1, - "name" : "Alexander Karelas" + "drilldown" : "Alexander Karelas" }, { - "name" : "Dave Jacoby", "y" : 3, - "drilldown" : "Dave Jacoby" + "drilldown" : "Dave Jacoby", + "name" : "Dave Jacoby" }, { - "drilldown" : "David Ferrone", "name" : "David Ferrone", + "drilldown" : "David Ferrone", "y" : 2 }, { "drilldown" : "E. Choroba", - "name" : "E. Choroba", - "y" : 2 + "y" : 2, + "name" : "E. Choroba" }, { "name" : "Feng Chang", @@ -220,18 +239,18 @@ }, { "name" : "Laurent Rosenfeld", - "y" : 3, - "drilldown" : "Laurent Rosenfeld" + "drilldown" : "Laurent Rosenfeld", + "y" : 6 }, { - "y" : 12, "name" : "Luca Ferrari", - "drilldown" : "Luca Ferrari" + "drilldown" : "Luca Ferrari", + "y" : 12 }, { - "name" : "Mark Anderson", + "drilldown" : "Mark Anderson", "y" : 2, - "drilldown" : "Mark Anderson" + "name" : "Mark Anderson" }, { "name" : "Matthew Neleigh", @@ -239,9 +258,9 @@ "drilldown" : "Matthew Neleigh" }, { - "name" : "Peter Meszaros", "y" : 2, - "drilldown" : "Peter Meszaros" + "drilldown" : "Peter Meszaros", + "name" : "Peter Meszaros" }, { "name" : "Robbie Hatley", @@ -250,41 +269,22 @@ }, { "name" : "Thomas Kohler", - "y" : 4, - "drilldown" : "Thomas Kohler" + "drilldown" : "Thomas Kohler", + "y" : 4 }, { - "name" : "Ulrich Rieke", "y" : 4, - "drilldown" : "Ulrich Rieke" + "drilldown" : "Ulrich Rieke", + "name" : "Ulrich Rieke" }, { + "name" : "W. Luis Mochan", "drilldown" : "W. Luis Mochan", - "y" : 3, - "name" : "W. Luis Mochan" + "y" : 3 } ], - "name" : "The Weekly Challenge - 280", - "colorByPoint" : 1 - } - ], - "subtitle" : { - "text" : "[Champions: 14] Last updated at 2024-07-30 11:54:03 GMT" - }, - "xAxis" : { - "type" : "category" - }, - "chart" : { - "type" : "column" - }, - "tooltip" : { - "headerFormat" : "{series.name}
", - "followPointer" : 1, - "pointFormat" : "{point.name}: {point.y:f}
" - }, - "yAxis" : { - "title" : { - "text" : "Total Solutions" + "colorByPoint" : 1, + "name" : "The Weekly Challenge - 280" } - } + ] } diff --git a/stats/pwc-language-breakdown-2019.json b/stats/pwc-language-breakdown-2019.json index 6f3db77746..bcc94a6b84 100644 --- a/stats/pwc-language-breakdown-2019.json +++ b/stats/pwc-language-breakdown-2019.json @@ -1,28 +1,11 @@ { - "title" : { - "text" : "The Weekly Challenge Language" - }, - "plotOptions" : { - "series" : { - "dataLabels" : { - "enabled" : 1, - "format" : "{point.y}" - }, - "borderWidth" : 0 - } - }, - "legend" : { - "enabled" : "false" - }, "series" : [ { - "colorByPoint" : "true", - "name" : "The Weekly Challenge Languages", "data" : [ { - "name" : "001", "y" : 165, - "drilldown" : "001" + "drilldown" : "001", + "name" : "001" }, { "drilldown" : "002", @@ -40,24 +23,24 @@ "name" : "004" }, { - "drilldown" : "005", "y" : 82, + "drilldown" : "005", "name" : "005" }, { - "name" : "006", "y" : 63, - "drilldown" : "006" + "drilldown" : "006", + "name" : "006" }, { - "drilldown" : "007", "y" : 71, + "drilldown" : "007", "name" : "007" }, { "name" : "008", - "y" : 82, - "drilldown" : "008" + "drilldown" : "008", + "y" : 82 }, { "name" : "009", @@ -65,19 +48,19 @@ "drilldown" : "009" }, { - "y" : 69, "name" : "010", - "drilldown" : "010" + "drilldown" : "010", + "y" : 69 }, { - "drilldown" : "011", "name" : "011", + "drilldown" : "011", "y" : 86 }, { "y" : 90, - "name" : "012", - "drilldown" : "012" + "drilldown" : "012", + "name" : "012" }, { "name" : "013", @@ -85,29 +68,29 @@ "drilldown" : "013" }, { + "drilldown" : "014", "y" : 98, - "name" : "014", - "drilldown" : "014" + "name" : "014" }, { - "y" : 95, "name" : "015", - "drilldown" : "015" + "drilldown" : "015", + "y" : 95 }, { - "drilldown" : "016", "name" : "016", - "y" : 75 + "y" : 75, + "drilldown" : "016" }, { - "drilldown" : "017", + "name" : "017", "y" : 83, - "name" : "017" + "drilldown" : "017" }, { "y" : 82, - "name" : "018", - "drilldown" : "018" + "drilldown" : "018", + "name" : "018" }, { "drilldown" : "019", @@ -115,49 +98,49 @@ "name" : "019" }, { - "y" : 100, "name" : "020", - "drilldown" : "020" + "drilldown" : "020", + "y" : 100 }, { - "drilldown" : "021", "y" : 72, + "drilldown" : "021", "name" : "021" }, { "name" : "022", - "y" : 72, - "drilldown" : "022" + "drilldown" : "022", + "y" : 72 }, { "drilldown" : "023", - "name" : "023", - "y" : 88 + "y" : 88, + "name" : "023" }, { "drilldown" : "024", - "name" : "024", - "y" : 77 + "y" : 77, + "name" : "024" }, { - "name" : "025", "y" : 62, - "drilldown" : "025" + "drilldown" : "025", + "name" : "025" }, { - "drilldown" : "026", "name" : "026", - "y" : 75 + "y" : 75, + "drilldown" : "026" }, { + "drilldown" : "027", "y" : 64, - "name" : "027", - "drilldown" : "027" + "name" : "027" }, { + "y" : 82, "drilldown" : "028", - "name" : "028", - "y" : 82 + "name" : "028" }, { "drilldown" : "029", @@ -165,8 +148,8 @@ "name" : "029" }, { - "y" : 120, "name" : "030", + "y" : 120, "drilldown" : "030" }, { @@ -175,14 +158,14 @@ "name" : "031" }, { - "name" : "032", + "drilldown" : "032", "y" : 97, - "drilldown" : "032" + "name" : "032" }, { "drilldown" : "033", - "name" : "033", - "y" : 113 + "y" : 113, + "name" : "033" }, { "name" : "034", @@ -190,9 +173,9 @@ "drilldown" : "034" }, { - "name" : "035", + "drilldown" : "035", "y" : 68, - "drilldown" : "035" + "name" : "035" }, { "name" : "036", @@ -200,14 +183,14 @@ "drilldown" : "036" }, { - "drilldown" : "037", "y" : 70, + "drilldown" : "037", "name" : "037" }, { "y" : 74, - "name" : "038", - "drilldown" : "038" + "drilldown" : "038", + "name" : "038" }, { "drilldown" : "039", @@ -215,18 +198,48 @@ "name" : "039" }, { - "drilldown" : "040", + "name" : "040", "y" : 77, - "name" : "040" + "drilldown" : "040" }, { - "name" : "041", + "drilldown" : "041", "y" : 80, - "drilldown" : "041" + "name" : "041" } - ] + ], + "colorByPoint" : "true", + "name" : "The Weekly Challenge Languages" } ], + "tooltip" : { + "followPointer" : "true", + "pointFormat" : "Challenge {point.name}: {point.y:f}
", + "headerFormat" : "" + }, + "title" : { + "text" : "The Weekly Challenge Language" + }, + "chart" : { + "type" : "column" + }, + "subtitle" : { + "text" : "Click the columns to drilldown the language breakdown. Last updated at 2024-07-30 16:23:00 GMT" + }, + "yAxis" : { + "title" : { + "text" : "Total Solutions" + } + }, + "plotOptions" : { + "series" : { + "borderWidth" : 0, + "dataLabels" : { + "format" : "{point.y}", + "enabled" : 1 + } + } + }, "drilldown" : { "series" : [ { @@ -244,8 +257,8 @@ 12 ] ], - "name" : "001", - "id" : "001" + "id" : "001", + "name" : "001" }, { "data" : [ @@ -262,10 +275,11 @@ 10 ] ], - "name" : "002", - "id" : "002" + "id" : "002", + "name" : "002" }, { + "id" : "003", "data" : [ [ "Perl", @@ -280,10 +294,11 @@ 9 ] ], - "id" : "003", "name" : "003" }, { + "name" : "004", + "id" : "004", "data" : [ [ "Perl", @@ -297,12 +312,11 @@ "Blog", 10 ] - ], - "id" : "004", - "name" : "004" + ] }, { "name" : "005", + "id" : "005", "data" : [ [ "Perl", @@ -316,10 +330,10 @@ "Blog", 12 ] - ], - "id" : "005" + ] }, { + "name" : "006", "data" : [ [ "Perl", @@ -334,10 +348,11 @@ 7 ] ], - "id" : "006", - "name" : "006" + "id" : "006" }, { + "name" : "007", + "id" : "007", "data" : [ [ "Perl", @@ -351,9 +366,7 @@ "Blog", 10 ] - ], - "name" : "007", - "id" : "007" + ] }, { "data" : [ @@ -374,6 +387,7 @@ "name" : "008" }, { + "name" : "009", "data" : [ [ "Perl", @@ -388,10 +402,10 @@ 13 ] ], - "id" : "009", - "name" : "009" + "id" : "009" }, { + "name" : "010", "id" : "010", "data" : [ [ @@ -406,10 +420,10 @@ "Blog", 11 ] - ], - "name" : "010" + ] }, { + "id" : "011", "data" : [ [ "Perl", @@ -424,8 +438,7 @@ 10 ] ], - "name" : "011", - "id" : "011" + "name" : "011" }, { "name" : "012", @@ -464,7 +477,7 @@ "id" : "013" }, { - "id" : "014", + "name" : "014", "data" : [ [ "Perl", @@ -479,9 +492,10 @@ 15 ] ], - "name" : "014" + "id" : "014" }, { + "id" : "015", "data" : [ [ "Perl", @@ -496,7 +510,6 @@ 15 ] ], - "id" : "015", "name" : "015" }, { @@ -518,6 +531,7 @@ "name" : "016" }, { + "id" : "017", "data" : [ [ "Perl", @@ -532,11 +546,10 @@ 12 ] ], - "id" : "017", "name" : "017" }, { - "id" : "018", + "name" : "018", "data" : [ [ "Perl", @@ -551,9 +564,11 @@ 14 ] ], - "name" : "018" + "id" : "018" }, { + "name" : "019", + "id" : "019", "data" : [ [ "Perl", @@ -567,9 +582,7 @@ "Blog", 13 ] - ], - "name" : "019", - "id" : "019" + ] }, { "data" : [ @@ -590,7 +603,6 @@ "name" : "020" }, { - "id" : "021", "data" : [ [ "Perl", @@ -605,6 +617,7 @@ 10 ] ], + "id" : "021", "name" : "021" }, { @@ -622,11 +635,11 @@ 10 ] ], - "name" : "022", - "id" : "022" + "id" : "022", + "name" : "022" }, { - "name" : "023", + "id" : "023", "data" : [ [ "Perl", @@ -641,9 +654,10 @@ 12 ] ], - "id" : "023" + "name" : "023" }, { + "id" : "024", "data" : [ [ "Perl", @@ -658,8 +672,7 @@ 11 ] ], - "name" : "024", - "id" : "024" + "name" : "024" }, { "data" : [ @@ -680,7 +693,7 @@ "name" : "025" }, { - "name" : "026", + "id" : "026", "data" : [ [ "Perl", @@ -695,10 +708,11 @@ 10 ] ], - "id" : "026" + "name" : "026" }, { "name" : "027", + "id" : "027", "data" : [ [ "Perl", @@ -712,11 +726,9 @@ "Blog", 9 ] - ], - "id" : "027" + ] }, { - "name" : "028", "data" : [ [ "Perl", @@ -731,7 +743,8 @@ 9 ] ], - "id" : "028" + "id" : "028", + "name" : "028" }, { "data" : [ @@ -748,10 +761,12 @@ 12 ] ], - "name" : "029", - "id" : "029" + "id" : "029", + "name" : "029" }, { + "name" : "030", + "id" : "030", "data" : [ [ "Perl", @@ -765,12 +780,10 @@ "Blog", 10 ] - ], - "id" : "030", - "name" : "030" + ] }, { - "id" : "031", + "name" : "031", "data" : [ [ "Perl", @@ -785,7 +798,7 @@ 9 ] ], - "name" : "031" + "id" : "031" }, { "name" : "032", @@ -806,6 +819,8 @@ "id" : "032" }, { + "name" : "033", + "id" : "033", "data" : [ [ "Perl", @@ -819,11 +834,10 @@ "Blog", 10 ] - ], - "id" : "033", - "name" : "033" + ] }, { + "name" : "034", "data" : [ [ "Perl", @@ -838,8 +852,7 @@ 11 ] ], - "id" : "034", - "name" : "034" + "id" : "034" }, { "data" : [ @@ -856,10 +869,11 @@ 9 ] ], - "name" : "035", - "id" : "035" + "id" : "035", + "name" : "035" }, { + "id" : "036", "data" : [ [ "Perl", @@ -874,11 +888,9 @@ 11 ] ], - "id" : "036", "name" : "036" }, { - "name" : "037", "data" : [ [ "Perl", @@ -893,9 +905,11 @@ 9 ] ], - "id" : "037" + "id" : "037", + "name" : "037" }, { + "name" : "038", "id" : "038", "data" : [ [ @@ -910,11 +924,10 @@ "Blog", 12 ] - ], - "name" : "038" + ] }, { - "id" : "039", + "name" : "039", "data" : [ [ "Perl", @@ -929,10 +942,9 @@ 12 ] ], - "name" : "039" + "id" : "039" }, { - "name" : "040", "data" : [ [ "Perl", @@ -947,9 +959,11 @@ 10 ] ], - "id" : "040" + "id" : "040", + "name" : "040" }, { + "name" : "041", "id" : "041", "data" : [ [ @@ -964,28 +978,14 @@ "Blog", 9 ] - ], - "name" : "041" + ] } ] }, - "subtitle" : { - "text" : "Click the columns to drilldown the language breakdown. Last updated at 2024-07-30 11:54:03 GMT" - }, "xAxis" : { "type" : "category" }, - "chart" : { - "type" : "column" - }, - "yAxis" : { - "title" : { - "text" : "Total Solutions" - } - }, - "tooltip" : { - "headerFormat" : "", - "pointFormat" : "Challenge {point.name}: {point.y:f}
", - "followPointer" : "true" + "legend" : { + "enabled" : "false" } } diff --git a/stats/pwc-language-breakdown-2020.json b/stats/pwc-language-breakdown-2020.json index 972403f3d2..3e9dd6a56c 100644 --- a/stats/pwc-language-breakdown-2020.json +++ b/stats/pwc-language-breakdown-2020.json @@ -1,23 +1,10 @@ { - "plotOptions" : { - "series" : { - "borderWidth" : 0, - "dataLabels" : { - "format" : "{point.y}", - "enabled" : 1 - } - } - }, - "title" : { - "text" : "The Weekly Challenge Language" - }, "legend" : { "enabled" : "false" }, "drilldown" : { "series" : [ { - "name" : "042", "data" : [ [ "Perl", @@ -32,10 +19,11 @@ 11 ] ], - "id" : "042" + "id" : "042", + "name" : "042" }, { - "name" : "043", + "id" : "043", "data" : [ [ "Perl", @@ -50,7 +38,7 @@ 11 ] ], - "id" : "043" + "name" : "043" }, { "data" : [ @@ -71,6 +59,7 @@ "name" : "044" }, { + "id" : "045", "data" : [ [ "Perl", @@ -85,10 +74,10 @@ 11 ] ], - "name" : "045", - "id" : "045" + "name" : "045" }, { + "name" : "046", "id" : "046", "data" : [ [ @@ -103,11 +92,10 @@ "Blog", 10 ] - ], - "name" : "046" + ] }, { - "name" : "047", + "id" : "047", "data" : [ [ "Perl", @@ -122,7 +110,7 @@ 10 ] ], - "id" : "047" + "name" : "047" }, { "id" : "048", @@ -179,7 +167,6 @@ "name" : "050" }, { - "id" : "051", "data" : [ [ "Perl", @@ -194,10 +181,10 @@ 11 ] ], + "id" : "051", "name" : "051" }, { - "id" : "052", "data" : [ [ "Perl", @@ -212,9 +199,11 @@ 14 ] ], + "id" : "052", "name" : "052" }, { + "name" : "053", "id" : "053", "data" : [ [ @@ -229,10 +218,10 @@ "Blog", 15 ] - ], - "name" : "053" + ] }, { + "name" : "054", "data" : [ [ "Perl", @@ -247,8 +236,7 @@ 18 ] ], - "id" : "054", - "name" : "054" + "id" : "054" }, { "data" : [ @@ -269,7 +257,6 @@ "name" : "055" }, { - "name" : "056", "data" : [ [ "Perl", @@ -284,7 +271,8 @@ 17 ] ], - "id" : "056" + "id" : "056", + "name" : "056" }, { "data" : [ @@ -305,6 +293,7 @@ "name" : "057" }, { + "name" : "058", "id" : "058", "data" : [ [ @@ -319,10 +308,11 @@ "Blog", 13 ] - ], - "name" : "058" + ] }, { + "name" : "059", + "id" : "059", "data" : [ [ "Perl", @@ -336,11 +326,10 @@ "Blog", 16 ] - ], - "name" : "059", - "id" : "059" + ] }, { + "name" : "060", "data" : [ [ "Perl", @@ -355,10 +344,10 @@ 16 ] ], - "id" : "060", - "name" : "060" + "id" : "060" }, { + "id" : "061", "data" : [ [ "Perl", @@ -373,7 +362,6 @@ 14 ] ], - "id" : "061", "name" : "061" }, { @@ -391,11 +379,10 @@ 11 ] ], - "name" : "062", - "id" : "062" + "id" : "062", + "name" : "062" }, { - "id" : "063", "data" : [ [ "Perl", @@ -410,10 +397,10 @@ 13 ] ], + "id" : "063", "name" : "063" }, { - "name" : "064", "data" : [ [ "Perl", @@ -428,7 +415,8 @@ 16 ] ], - "id" : "064" + "id" : "064", + "name" : "064" }, { "data" : [ @@ -445,8 +433,8 @@ 15 ] ], - "name" : "065", - "id" : "065" + "id" : "065", + "name" : "065" }, { "data" : [ @@ -463,10 +451,12 @@ 14 ] ], - "name" : "066", - "id" : "066" + "id" : "066", + "name" : "066" }, { + "name" : "067", + "id" : "067", "data" : [ [ "Perl", @@ -480,11 +470,10 @@ "Blog", 18 ] - ], - "name" : "067", - "id" : "067" + ] }, { + "id" : "068", "data" : [ [ "Perl", @@ -499,7 +488,6 @@ 13 ] ], - "id" : "068", "name" : "068" }, { @@ -521,6 +509,7 @@ "name" : "069" }, { + "id" : "070", "data" : [ [ "Perl", @@ -535,7 +524,6 @@ 17 ] ], - "id" : "070", "name" : "070" }, { @@ -558,6 +546,7 @@ }, { "name" : "072", + "id" : "072", "data" : [ [ "Perl", @@ -571,8 +560,7 @@ "Blog", 19 ] - ], - "id" : "072" + ] }, { "id" : "073", @@ -611,6 +599,7 @@ "id" : "074" }, { + "name" : "075", "data" : [ [ "Perl", @@ -625,11 +614,11 @@ 20 ] ], - "name" : "075", "id" : "075" }, { "name" : "076", + "id" : "076", "data" : [ [ "Perl", @@ -643,11 +632,10 @@ "Blog", 16 ] - ], - "id" : "076" + ] }, { - "id" : "077", + "name" : "077", "data" : [ [ "Perl", @@ -662,10 +650,9 @@ 14 ] ], - "name" : "077" + "id" : "077" }, { - "name" : "078", "data" : [ [ "Perl", @@ -680,7 +667,8 @@ 18 ] ], - "id" : "078" + "id" : "078", + "name" : "078" }, { "name" : "079", @@ -702,6 +690,7 @@ }, { "name" : "080", + "id" : "080", "data" : [ [ "Perl", @@ -715,8 +704,7 @@ "Blog", 16 ] - ], - "id" : "080" + ] }, { "id" : "081", @@ -737,6 +725,7 @@ "name" : "081" }, { + "id" : "082", "data" : [ [ "Perl", @@ -751,10 +740,10 @@ 17 ] ], - "name" : "082", - "id" : "082" + "name" : "082" }, { + "id" : "083", "data" : [ [ "Perl", @@ -769,10 +758,10 @@ 16 ] ], - "id" : "083", "name" : "083" }, { + "name" : "084", "data" : [ [ "Perl", @@ -787,11 +776,9 @@ 12 ] ], - "id" : "084", - "name" : "084" + "id" : "084" }, { - "id" : "085", "data" : [ [ "Perl", @@ -806,10 +793,11 @@ 18 ] ], + "id" : "085", "name" : "085" }, { - "id" : "086", + "name" : "086", "data" : [ [ "Perl", @@ -824,10 +812,9 @@ 15 ] ], - "name" : "086" + "id" : "086" }, { - "name" : "087", "data" : [ [ "Perl", @@ -842,9 +829,11 @@ 14 ] ], - "id" : "087" + "id" : "087", + "name" : "087" }, { + "id" : "088", "data" : [ [ "Perl", @@ -859,8 +848,7 @@ 20 ] ], - "name" : "088", - "id" : "088" + "name" : "088" }, { "id" : "089", @@ -881,6 +869,7 @@ "name" : "089" }, { + "name" : "090", "data" : [ [ "Perl", @@ -895,11 +884,11 @@ 17 ] ], - "id" : "090", - "name" : "090" + "id" : "090" }, { "name" : "091", + "id" : "091", "data" : [ [ "Perl", @@ -913,8 +902,7 @@ "Blog", 16 ] - ], - "id" : "091" + ] }, { "data" : [ @@ -935,6 +923,8 @@ "name" : "092" }, { + "name" : "093", + "id" : "093", "data" : [ [ "Perl", @@ -948,12 +938,36 @@ "Blog", 16 ] - ], - "name" : "093", - "id" : "093" + ] } ] }, + "xAxis" : { + "type" : "category" + }, + "plotOptions" : { + "series" : { + "dataLabels" : { + "format" : "{point.y}", + "enabled" : 1 + }, + "borderWidth" : 0 + } + }, + "yAxis" : { + "title" : { + "text" : "Total Solutions" + } + }, + "subtitle" : { + "text" : "Click the columns to drilldown the language breakdown. Last updated at 2024-07-30 16:23:00 GMT" + }, + "chart" : { + "type" : "column" + }, + "title" : { + "text" : "The Weekly Challenge Language" + }, "series" : [ { "colorByPoint" : "true", @@ -965,18 +979,18 @@ }, { "drilldown" : "043", - "name" : "043", - "y" : 72 + "y" : 72, + "name" : "043" }, { + "y" : 90, "drilldown" : "044", - "name" : "044", - "y" : 90 + "name" : "044" }, { - "drilldown" : "045", + "name" : "045", "y" : 102, - "name" : "045" + "drilldown" : "045" }, { "name" : "046", @@ -984,9 +998,9 @@ "drilldown" : "046" }, { + "drilldown" : "047", "y" : 88, - "name" : "047", - "drilldown" : "047" + "name" : "047" }, { "drilldown" : "048", @@ -994,89 +1008,89 @@ "name" : "048" }, { - "y" : 93, "name" : "049", - "drilldown" : "049" + "drilldown" : "049", + "y" : 93 }, { - "drilldown" : "050", "name" : "050", + "drilldown" : "050", "y" : 104 }, { "y" : 95, - "name" : "051", - "drilldown" : "051" + "drilldown" : "051", + "name" : "051" }, { + "name" : "052", "drilldown" : "052", - "y" : 93, - "name" : "052" + "y" : 93 }, { - "name" : "053", + "drilldown" : "053", "y" : 105, - "drilldown" : "053" + "name" : "053" }, { - "drilldown" : "054", "name" : "054", + "drilldown" : "054", "y" : 107 }, { - "y" : 92, "name" : "055", - "drilldown" : "055" + "drilldown" : "055", + "y" : 92 }, { "y" : 104, - "name" : "056", - "drilldown" : "056" + "drilldown" : "056", + "name" : "056" }, { "drilldown" : "057", - "name" : "057", - "y" : 86 + "y" : 86, + "name" : "057" }, { + "y" : 71, "drilldown" : "058", - "name" : "058", - "y" : 71 + "name" : "058" }, { "drilldown" : "059", - "name" : "059", - "y" : 93 + "y" : 93, + "name" : "059" }, { - "drilldown" : "060", "y" : 89, + "drilldown" : "060", "name" : "060" }, { - "drilldown" : "061", "name" : "061", + "drilldown" : "061", "y" : 85 }, { - "drilldown" : "062", "name" : "062", + "drilldown" : "062", "y" : 62 }, { + "y" : 93, "drilldown" : "063", - "name" : "063", - "y" : 93 + "name" : "063" }, { - "y" : 84, "name" : "064", - "drilldown" : "064" + "drilldown" : "064", + "y" : 84 }, { - "name" : "065", "y" : 77, - "drilldown" : "065" + "drilldown" : "065", + "name" : "065" }, { "drilldown" : "066", @@ -1084,44 +1098,44 @@ "name" : "066" }, { - "drilldown" : "067", "name" : "067", - "y" : 94 + "y" : 94, + "drilldown" : "067" }, { "y" : 79, - "name" : "068", - "drilldown" : "068" + "drilldown" : "068", + "name" : "068" }, { - "name" : "069", "y" : 87, - "drilldown" : "069" + "drilldown" : "069", + "name" : "069" }, { - "name" : "070", + "drilldown" : "070", "y" : 98, - "drilldown" : "070" + "name" : "070" }, { + "name" : "071", "drilldown" : "071", - "y" : 82, - "name" : "071" + "y" : 82 }, { "drilldown" : "072", - "name" : "072", - "y" : 116 + "y" : 116, + "name" : "072" }, { + "drilldown" : "073", "y" : 112, - "name" : "073", - "drilldown" : "073" + "name" : "073" }, { - "y" : 117, "name" : "074", - "drilldown" : "074" + "drilldown" : "074", + "y" : 117 }, { "drilldown" : "075", @@ -1135,110 +1149,96 @@ }, { "y" : 100, - "name" : "077", - "drilldown" : "077" + "drilldown" : "077", + "name" : "077" }, { - "drilldown" : "078", + "name" : "078", "y" : 127, - "name" : "078" + "drilldown" : "078" }, { "name" : "079", - "y" : 122, - "drilldown" : "079" + "drilldown" : "079", + "y" : 122 }, { - "drilldown" : "080", "y" : 127, + "drilldown" : "080", "name" : "080" }, { + "y" : 114, "drilldown" : "081", - "name" : "081", - "y" : 114 + "name" : "081" }, { "drilldown" : "082", - "name" : "082", - "y" : 114 + "y" : 114, + "name" : "082" }, { - "drilldown" : "083", + "name" : "083", "y" : 127, - "name" : "083" + "drilldown" : "083" }, { + "y" : 119, "drilldown" : "084", - "name" : "084", - "y" : 119 + "name" : "084" }, { - "drilldown" : "085", "name" : "085", - "y" : 113 + "y" : 113, + "drilldown" : "085" }, { "y" : 104, - "name" : "086", - "drilldown" : "086" + "drilldown" : "086", + "name" : "086" }, { - "name" : "087", + "drilldown" : "087", "y" : 101, - "drilldown" : "087" + "name" : "087" }, { - "drilldown" : "088", "y" : 121, + "drilldown" : "088", "name" : "088" }, { - "name" : "089", + "drilldown" : "089", "y" : 113, - "drilldown" : "089" + "name" : "089" }, { - "drilldown" : "090", + "name" : "090", "y" : 113, - "name" : "090" + "drilldown" : "090" }, { - "name" : "091", "y" : 108, - "drilldown" : "091" + "drilldown" : "091", + "name" : "091" }, { - "name" : "092", "y" : 98, - "drilldown" : "092" + "drilldown" : "092", + "name" : "092" }, { - "drilldown" : "093", + "name" : "093", "y" : 87, - "name" : "093" + "drilldown" : "093" } ], "name" : "The Weekly Challenge Languages" } ], - "subtitle" : { - "text" : "Click the columns to drilldown the language breakdown. Last updated at 2024-07-30 11:54:03 GMT" - }, - "xAxis" : { - "type" : "category" - }, - "chart" : { - "type" : "column" - }, "tooltip" : { + "headerFormat" : "", "pointFormat" : "Challenge {point.name}: {point.y:f}
", - "followPointer" : "true", - "headerFormat" : "" - }, - "yAxis" : { - "title" : { - "text" : "Total Solutions" - } + "followPointer" : "true" } } diff --git a/stats/pwc-language-breakdown-2021.json b/stats/pwc-language-breakdown-2021.json index 0b4fe558b4..531e6b3ac8 100644 --- a/stats/pwc-language-breakdown-2021.json +++ b/stats/pwc-language-breakdown-2021.json @@ -1,10 +1,277 @@ { - "legend" : { - "enabled" : "false" - }, - "title" : { - "text" : "The Weekly Challenge Language" + "tooltip" : { + "headerFormat" : "", + "followPointer" : "true", + "pointFormat" : "Challenge {point.name}: {point.y:f}
" }, + "series" : [ + { + "name" : "The Weekly Challenge Languages", + "colorByPoint" : "true", + "data" : [ + { + "drilldown" : "094", + "y" : 87, + "name" : "094" + }, + { + "name" : "095", + "y" : 108, + "drilldown" : "095" + }, + { + "name" : "096", + "y" : 108, + "drilldown" : "096" + }, + { + "name" : "097", + "drilldown" : "097", + "y" : 111 + }, + { + "y" : 108, + "drilldown" : "098", + "name" : "098" + }, + { + "name" : "099", + "drilldown" : "099", + "y" : 97 + }, + { + "drilldown" : 100, + "y" : 120, + "name" : "100" + }, + { + "name" : "101", + "drilldown" : 101, + "y" : 83 + }, + { + "name" : "102", + "drilldown" : 102, + "y" : 90 + }, + { + "name" : "103", + "y" : 79, + "drilldown" : 103 + }, + { + "drilldown" : 104, + "y" : 85, + "name" : "104" + }, + { + "name" : "105", + "drilldown" : 105, + "y" : 77 + }, + { + "name" : "106", + "drilldown" : 106, + "y" : 97 + }, + { + "name" : "107", + "drilldown" : 107, + "y" : 92 + }, + { + "name" : "108", + "y" : 96, + "drilldown" : 108 + }, + { + "drilldown" : 109, + "y" : 109, + "name" : "109" + }, + { + "name" : "110", + "drilldown" : 110, + "y" : 110 + }, + { + "drilldown" : 111, + "y" : 93, + "name" : "111" + }, + { + "y" : 94, + "drilldown" : 112, + "name" : "112" + }, + { + "name" : "113", + "drilldown" : 113, + "y" : 94 + }, + { + "drilldown" : 114, + "y" : 110, + "name" : "114" + }, + { + "y" : 98, + "drilldown" : 115, + "name" : "115" + }, + { + "name" : "116", + "y" : 97, + "drilldown" : 116 + }, + { + "name" : "117", + "drilldown" : 117, + "y" : 99 + }, + { + "name" : "118", + "y" : 85, + "drilldown" : 118 + }, + { + "drilldown" : 119, + "y" : 125, + "name" : "119" + }, + { + "name" : "120", + "y" : 116, + "drilldown" : 120 + }, + { + "drilldown" : 121, + "y" : 94, + "name" : "121" + }, + { + "name" : "122", + "y" : 110, + "drilldown" : 122 + }, + { + "name" : "123", + "y" : 105, + "drilldown" : 123 + }, + { + "name" : "124", + "drilldown" : 124, + "y" : 87 + }, + { + "drilldown" : 125, + "y" : 65, + "name" : "125" + }, + { + "y" : 113, + "drilldown" : 126, + "name" : "126" + }, + { + "y" : 115, + "drilldown" : 127, + "name" : "127" + }, + { + "y" : 73, + "drilldown" : 128, + "name" : "128" + }, + { + "name" : "129", + "y" : 52, + "drilldown" : 129 + }, + { + "y" : 75, + "drilldown" : 130, + "name" : "130" + }, + { + "y" : 91, + "drilldown" : 131, + "name" : "131" + }, + { + "y" : 78, + "drilldown" : 132, + "name" : "132" + }, + { + "name" : "133", + "y" : 95, + "drilldown" : 133 + }, + { + "name" : "134", + "y" : 94, + "drilldown" : 134 + }, + { + "name" : "135", + "y" : 104, + "drilldown" : 135 + }, + { + "name" : "136", + "y" : 97, + "drilldown" : 136 + }, + { + "drilldown" : 137, + "y" : 100, + "name" : "137" + }, + { + "y" : 102, + "drilldown" : 138, + "name" : "138" + }, + { + "drilldown" : 139, + "y" : 97, + "name" : "139" + }, + { + "drilldown" : 140, + "y" : 103, + "name" : "140" + }, + { + "drilldown" : 141, + "y" : 102, + "name" : "141" + }, + { + "drilldown" : 142, + "y" : 85, + "name" : "142" + }, + { + "name" : "143", + "y" : 85, + "drilldown" : 143 + }, + { + "name" : "144", + "y" : 90, + "drilldown" : 144 + }, + { + "drilldown" : 145, + "y" : 96, + "name" : "145" + } + ] + } + ], "plotOptions" : { "series" : { "borderWidth" : 0, @@ -17,6 +284,7 @@ "drilldown" : { "series" : [ { + "name" : "094", "data" : [ [ "Perl", @@ -31,10 +299,10 @@ 17 ] ], - "id" : "094", - "name" : "094" + "id" : "094" }, { + "id" : "095", "data" : [ [ "Perl", @@ -49,10 +317,11 @@ 19 ] ], - "name" : "095", - "id" : "095" + "name" : "095" }, { + "name" : "096", + "id" : "096", "data" : [ [ "Perl", @@ -66,11 +335,10 @@ "Blog", 19 ] - ], - "id" : "096", - "name" : "096" + ] }, { + "id" : "097", "data" : [ [ "Perl", @@ -85,10 +353,10 @@ 19 ] ], - "id" : "097", "name" : "097" }, { + "name" : "098", "id" : "098", "data" : [ [ @@ -103,11 +371,10 @@ "Blog", 17 ] - ], - "name" : "098" + ] }, { - "id" : "099", + "name" : "099", "data" : [ [ "Perl", @@ -122,10 +389,10 @@ 14 ] ], - "name" : "099" + "id" : "099" }, { - "name" : 100, + "id" : 100, "data" : [ [ "Perl", @@ -140,7 +407,7 @@ 21 ] ], - "id" : 100 + "name" : 100 }, { "id" : 101, @@ -161,6 +428,8 @@ "name" : 101 }, { + "name" : 102, + "id" : 102, "data" : [ [ "Perl", @@ -174,9 +443,7 @@ "Blog", 15 ] - ], - "name" : 102, - "id" :