From f84f38be0e67c61c44fa0769b00e53124d1bdde0 Mon Sep 17 00:00:00 2001 From: Mohammad S Anwar Date: Wed, 26 Jul 2023 23:16:10 +0100 Subject: - Added solutions by Arne Sommer. - Added solutions by Laurent Rosenfeld. --- challenge-227/laurent-rosenfeld/blog1.txt | 1 + challenge-227/laurent-rosenfeld/perl/ch-2.pl | 63 ++ challenge-227/laurent-rosenfeld/raku/ch-2.raku | 57 + stats/pwc-current.json | 319 +++--- stats/pwc-language-breakdown-summary.json | 84 +- stats/pwc-language-breakdown.json | 1438 ++++++++++++------------ stats/pwc-leaders.json | 400 +++---- stats/pwc-summary-1-30.json | 28 +- stats/pwc-summary-121-150.json | 112 +- stats/pwc-summary-151-180.json | 48 +- stats/pwc-summary-181-210.json | 108 +- stats/pwc-summary-211-240.json | 56 +- stats/pwc-summary-241-270.json | 20 +- stats/pwc-summary-271-300.json | 38 +- stats/pwc-summary-31-60.json | 58 +- stats/pwc-summary-61-90.json | 42 +- stats/pwc-summary-91-120.json | 24 +- stats/pwc-summary.json | 50 +- 18 files changed, 1543 insertions(+), 1403 deletions(-) create mode 100644 challenge-227/laurent-rosenfeld/blog1.txt create mode 100644 challenge-227/laurent-rosenfeld/perl/ch-2.pl create mode 100644 challenge-227/laurent-rosenfeld/raku/ch-2.raku diff --git a/challenge-227/laurent-rosenfeld/blog1.txt b/challenge-227/laurent-rosenfeld/blog1.txt new file mode 100644 index 0000000000..66db4bdf8e --- /dev/null +++ b/challenge-227/laurent-rosenfeld/blog1.txt @@ -0,0 +1 @@ +https://blogs.perl.org/users/laurent_r/2023/07/perl-weekly-challenge-227-roman-maths.html diff --git a/challenge-227/laurent-rosenfeld/perl/ch-2.pl b/challenge-227/laurent-rosenfeld/perl/ch-2.pl new file mode 100644 index 0000000000..26470af669 --- /dev/null +++ b/challenge-227/laurent-rosenfeld/perl/ch-2.pl @@ -0,0 +1,63 @@ +#!/usr/bin/perl +use strict; +use warnings; +use feature qw/say/; + +my %rom_tab = (I => 1, V => 5, X => 10, L => 50, + C => 100, D => 500, M => 1000, + IV => 4, IX => 9, XL => 40, XC => 90, + CD => 400, CM => 900); + +sub from_roman { + my $roman = uc shift; + my $arabic = 0; + my $prev_letter = "M"; + for my $letter (split //, $roman) { + $arabic -= 2 * $rom_tab{$prev_letter} + if $rom_tab{$letter} > $rom_tab{$prev_letter}; + $arabic += $rom_tab{$letter}; + $prev_letter = $letter; + } + return $arabic; +} + +sub to_roman { + my $arabic = shift; + warn "$arabic out of bounds" + unless $arabic > 0 and $arabic < 4000; + my $roman = ""; + for my $key (sort { $rom_tab{$b} <=> $rom_tab{$a} } + keys %rom_tab) { + my $num = int ($arabic / $rom_tab{$key}); + $roman .= $key x $num; + $arabic -= $rom_tab{$key} * $num; + } + return $roman; +} +sub process_input { + my ($rom1, $op, $rom2) = split /\s+/, $_[0]; + my $arabic1 = from_roman $rom1; + my $arabic2 = from_roman $rom2; + my $result = $op eq '+' ? $arabic1 + $arabic2 : + $op eq '-' ? $arabic1 - $arabic2 : + $op eq '/' ? $arabic1 / $arabic2 : + $op eq '*' ? $arabic1 * $arabic2 : + $op eq '**' ? $arabic1 ** $arabic2: + "illegal"; + return "nulla (they didn't have a symbol for 0)" + if $result == 0; + return "non potest (they didn't do fractions)" + if int($result) != $result; + return "non potest (they only went up to 3999)" + if $result >= 4000; + return "non potest (no negative numbers)" + if $result < 0; + return to_roman $result; +} + +for my $test ("IV + V", "M - I", "X / II", "XI * VI", + "VII ** III", "V - V", "V / II", "MMM + M", + "V - X ", "X - V") { + printf "%-10s => ", $test; + say process_input $test; +} diff --git a/challenge-227/laurent-rosenfeld/raku/ch-2.raku b/challenge-227/laurent-rosenfeld/raku/ch-2.raku new file mode 100644 index 0000000000..94456d0776 --- /dev/null +++ b/challenge-227/laurent-rosenfeld/raku/ch-2.raku @@ -0,0 +1,57 @@ +subset Roman-str of Str where $_ ~~ /^<[IVXLCDMivxlcdm]>+$/; + +my %rom-tab = < I 1 V 5 X 10 L 50 C 100 D 500 M 1000 + IV 4 IX 9 XL 40 XC 90 CD 400 CM 900 >; +my @ordered_romans = reverse sort { %rom-tab{$_} }, keys %rom-tab; + +sub from-roman (Roman-str $roman) { + my $numeric = 0; + my $prev_letter = "M"; + for $roman.uc.comb -> $letter { + $numeric -= 2 * %rom-tab{$prev_letter} + if %rom-tab{$letter} > %rom-tab{$prev_letter}; + $numeric += %rom-tab{$letter}; + # say "$letter $numeric"; + $prev_letter = $letter; + } + return $numeric; +} + +sub to-roman (Int $arabic is copy where { 0 < $_ < 4000 }) { + my $roman = ""; + for @ordered_romans -> $key { + my $num = ($arabic / %rom-tab{$key}).Int; + $roman ~= $key x $num; + $arabic -= %rom-tab{$key} * $num; + } + return $roman; +} +sub process-input (Str $in) { + my ($rom1, $op, $rom2) = split /\s+/, $in; + my $arabic1 = from-roman $rom1; + my $arabic2 = from-roman $rom2; + my $result; + given $op { + when '+' { $result = $arabic1 + $arabic2 } + when '-' { $result = $arabic1 - $arabic2 } + when '*' { $result = $arabic1 * $arabic2 } + when '/' { $result = $arabic1 / $arabic2 } + when '**' { $result = $arabic1 ** $arabic2 } + } + return "nulla (they didn't have a symbol for 0)" + if $result == 0; + return "non potest (they didn't do fractions)" + if $result.round != $result; + return "non potest (they only went up to 3999)" + if $result >= 4000; + return "non potest (no negative numbers)" + if $result < 0; + return to-roman $result.round; +} + +for "IV + V", "M - I", "X / II", "XI * VI", + "VII ** III", "V - V", "V / II", "MMM + M", + "V - X ", "X - V" -> $test-expr { + printf "%-10s => ", $test-expr; + say process-input $test-expr; +} diff --git a/stats/pwc-current.json b/stats/pwc-current.json index 8321e97aba..2651e7b38d 100644 --- a/stats/pwc-current.json +++ b/stats/pwc-current.json @@ -1,128 +1,8 @@ { - "series" : [ - { - "colorByPoint" : 1, - "name" : "The Weekly Challenge - 227", - "data" : [ - { - "name" : "Ali Moradi", - "drilldown" : "Ali Moradi", - "y" : 3 - }, - { - "drilldown" : "Andrew Shitov", - "name" : "Andrew Shitov", - "y" : 4 - }, - { - "drilldown" : "David Ferrone", - "name" : "David Ferrone", - "y" : 1 - }, - { - "drilldown" : "E. Choroba", - "name" : "E. Choroba", - "y" : 2 - }, - { - "name" : "Laurent Rosenfeld", - "drilldown" : "Laurent Rosenfeld", - "y" : 3 - }, - { - "y" : 8, - "name" : "Luca Ferrari", - "drilldown" : "Luca Ferrari" - }, - { - "y" : 2, - "drilldown" : "Mark Anderson", - "name" : "Mark Anderson" - }, - { - "name" : "Peter Campbell Smith", - "drilldown" : "Peter Campbell Smith", - "y" : 3 - }, - { - "drilldown" : "Peter Meszaros", - "name" : "Peter Meszaros", - "y" : 2 - }, - { - "y" : 3, - "name" : "Robbie Hatley", - "drilldown" : "Robbie Hatley" - }, - { - "y" : 4, - "name" : "Robert DiCicco", - "drilldown" : "Robert DiCicco" - }, - { - "y" : 4, - "drilldown" : "Roger Bell_West", - "name" : "Roger Bell_West" - }, - { - "drilldown" : "Simon Proctor", - "name" : "Simon Proctor", - "y" : 1 - }, - { - "y" : 1, - "drilldown" : "Steven Wilson", - "name" : "Steven Wilson" - }, - { - "y" : 4, - "name" : "Thomas Kohler", - "drilldown" : "Thomas Kohler" - }, - { - "name" : "W. Luis Mochan", - "drilldown" : "W. Luis Mochan", - "y" : 3 - } - ] - } - ], - "legend" : { - "enabled" : 0 - }, - "subtitle" : { - "text" : "[Champions: 16] Last updated at 2023-07-26 18:01:07 GMT" - }, - "plotOptions" : { - "series" : { - "dataLabels" : { - "format" : "{point.y}", - "enabled" : 1 - }, - "borderWidth" : 0 - } - }, - "title" : { - "text" : "The Weekly Challenge - 227" - }, - "chart" : { - "type" : "column" - }, - "yAxis" : { - "title" : { - "text" : "Total Solutions" - } - }, - "tooltip" : { - "followPointer" : 1, - "headerFormat" : "{series.name}
", - "pointFormat" : "{point.name}: {point.y:f}
" - }, "drilldown" : { "series" : [ { "id" : "Ali Moradi", - "name" : "Ali Moradi", "data" : [ [ "Perl", @@ -132,7 +12,8 @@ "Blog", 1 ] - ] + ], + "name" : "Ali Moradi" }, { "data" : [ @@ -141,49 +22,62 @@ 4 ] ], - "name" : "Andrew Shitov", - "id" : "Andrew Shitov" + "id" : "Andrew Shitov", + "name" : "Andrew Shitov" + }, + { + "data" : [ + [ + "Raku", + 2 + ], + [ + "Blog", + 1 + ] + ], + "id" : "Arne Sommer", + "name" : "Arne Sommer" }, { - "name" : "David Ferrone", "data" : [ [ "Perl", 1 ] ], - "id" : "David Ferrone" + "id" : "David Ferrone", + "name" : "David Ferrone" }, { - "id" : "E. Choroba", + "name" : "E. Choroba", "data" : [ [ "Perl", 2 ] ], - "name" : "E. Choroba" + "id" : "E. Choroba" }, { - "name" : "Laurent Rosenfeld", "data" : [ [ "Perl", - 1 + 2 ], [ "Raku", - 1 + 2 ], [ "Blog", - 1 + 2 ] ], - "id" : "Laurent Rosenfeld" + "id" : "Laurent Rosenfeld", + "name" : "Laurent Rosenfeld" }, { - "id" : "Luca Ferrari", "name" : "Luca Ferrari", "data" : [ [ @@ -194,7 +88,8 @@ "Blog", 6 ] - ] + ], + "id" : "Luca Ferrari" }, { "id" : "Mark Anderson", @@ -207,8 +102,6 @@ "name" : "Mark Anderson" }, { - "id" : "Peter Campbell Smith", - "name" : "Peter Campbell Smith", "data" : [ [ "Perl", @@ -218,11 +111,13 @@ "Blog", 1 ] - ] + ], + "id" : "Peter Campbell Smith", + "name" : "Peter Campbell Smith" }, { - "id" : "Peter Meszaros", "name" : "Peter Meszaros", + "id" : "Peter Meszaros", "data" : [ [ "Perl", @@ -231,7 +126,7 @@ ] }, { - "name" : "Robbie Hatley", + "id" : "Robbie Hatley", "data" : [ [ "Perl", @@ -242,7 +137,7 @@ 1 ] ], - "id" : "Robbie Hatley" + "name" : "Robbie Hatley" }, { "id" : "Robert DiCicco", @@ -259,6 +154,7 @@ "name" : "Robert DiCicco" }, { + "name" : "Roger Bell_West", "id" : "Roger Bell_West", "data" : [ [ @@ -269,31 +165,30 @@ "Raku", 2 ] - ], - "name" : "Roger Bell_West" + ] }, { - "id" : "Simon Proctor", - "name" : "Simon Proctor", "data" : [ [ "Raku", 1 ] - ] + ], + "id" : "Simon Proctor", + "name" : "Simon Proctor" }, { - "id" : "Steven Wilson", "name" : "Steven Wilson", "data" : [ [ "Perl", 1 ] - ] + ], + "id" : "Steven Wilson" }, { - "name" : "Thomas Kohler", + "id" : "Thomas Kohler", "data" : [ [ "Perl", @@ -304,9 +199,10 @@ 2 ] ], - "id" : "Thomas Kohler" + "name" : "Thomas Kohler" }, { + "name" : "W. Luis Mochan", "data" : [ [ "Perl", @@ -317,12 +213,135 @@ 1 ] ], - "name" : "W. Luis Mochan", "id" : "W. Luis Mochan" } ] }, + "plotOptions" : { + "series" : { + "borderWidth" : 0, + "dataLabels" : { + "format" : "{point.y}", + "enabled" : 1 + } + } + }, + "series" : [ + { + "name" : "The Weekly Challenge - 227", + "colorByPoint" : 1, + "data" : [ + { + "name" : "Ali Moradi", + "drilldown" : "Ali Moradi", + "y" : 3 + }, + { + "y" : 4, + "name" : "Andrew Shitov", + "drilldown" : "Andrew Shitov" + }, + { + "name" : "Arne Sommer", + "drilldown" : "Arne Sommer", + "y" : 3 + }, + { + "y" : 1, + "name" : "David Ferrone", + "drilldown" : "David Ferrone" + }, + { + "y" : 2, + "drilldown" : "E. Choroba", + "name" : "E. Choroba" + }, + { + "y" : 6, + "name" : "Laurent Rosenfeld", + "drilldown" : "Laurent Rosenfeld" + }, + { + "y" : 8, + "name" : "Luca Ferrari", + "drilldown" : "Luca Ferrari" + }, + { + "name" : "Mark Anderson", + "drilldown" : "Mark Anderson", + "y" : 2 + }, + { + "y" : 3, + "name" : "Peter Campbell Smith", + "drilldown" : "Peter Campbell Smith" + }, + { + "y" : 2, + "name" : "Peter Meszaros", + "drilldown" : "Peter Meszaros" + }, + { + "y" : 3, + "name" : "Robbie Hatley", + "drilldown" : "Robbie Hatley" + }, + { + "drilldown" : "Robert DiCicco", + "name" : "Robert DiCicco", + "y" : 4 + }, + { + "name" : "Roger Bell_West", + "drilldown" : "Roger Bell_West", + "y" : 4 + }, + { + "y" : 1, + "drilldown" : "Simon Proctor", + "name" : "Simon Proctor" + }, + { + "y" : 1, + "name" : "Steven Wilson", + "drilldown" : "Steven Wilson" + }, + { + "y" : 4, + "drilldown" : "Thomas Kohler", + "name" : "Thomas Kohler" + }, + { + "y" : 3, + "drilldown" : "W. Luis Mochan", + "name" : "W. Luis Mochan" + } + ] + } + ], + "tooltip" : { + "headerFormat" : "{series.name}
", + "followPointer" : 1, + "pointFormat" : "{point.name}: {point.y:f}
" + }, + "title" : { + "text" : "The Weekly Challenge - 227" + }, + "chart" : { + "type" : "column" + }, + "yAxis" : { + "title" : { + "text" : "Total Solutions" + } + }, + "subtitle" : { + "text" : "[Champions: 17] Last updated at 2023-07-26 22:11:56 GMT" + }, "xAxis" : { "type" : "category" + }, + "legend" : { + "enabled" : 0 } } diff --git a/stats/pwc-language-breakdown-summary.json b/stats/pwc-language-breakdown-summary.json index 4728be6ae6..7756a40cbd 100644 --- a/stats/pwc-language-breakdown-summary.json +++ b/stats/pwc-language-breakdown-summary.json @@ -1,55 +1,21 @@ { - "series" : [ - { - "data" : [ - [ - "Blog", - 3776 - ], - [ - "Perl", - 11602 - ], - [ - "Raku", - 6676 - ] - ], - "name" : "Contributions", - "dataLabels" : { - "style" : { - "fontSize" : "13px", - "fontFamily" : "Verdana, sans-serif" - }, - "enabled" : "true", - "y" : 10, - "format" : "{point.y:.0f}", - "align" : "right", - "rotation" : -90, - "color" : "#FFFFFF" - } - } - ], - "legend" : { - "enabled" : "false" - }, "subtitle" : { - "text" : "Last updated at 2023-07-26 18:01:07 GMT" + "text" : "Last updated at 2023-07-26 22:11:55 GMT" }, "title" : { "text" : "The Weekly Challenge Contributions [2019 - 2023]" }, + "chart" : { + "type" : "column" + }, "yAxis" : { + "min" : 0, "title" : { "text" : null - }, - "min" : 0 - }, - "chart" : { - "type" : "column" + } }, - "tooltip" : { - "pointFormat" : "{point.y:.0f}" + "legend" : { + "enabled" : "false" }, "xAxis" : { "type" : "category", @@ -59,5 +25,39 @@ "fontFamily" : "Verdana, sans-serif" } } + }, + "series" : [ + { + "name" : "Contributions", + "dataLabels" : { + "color" : "#FFFFFF", + "align" : "right", + "y" : 10, + "style" : { + "fontFamily" : "Verdana, sans-serif", + "fontSize" : "13px" + }, + "enabled" : "true", + "format" : "{point.y:.0f}", + "rotation" : -90 + }, + "data" : [ + [ + "Blog", + 3778 + ], + [ + "Perl", + 11603 + ], + [ + "Raku", + 6679 + ] + ] + } + ], + "tooltip" : { + "pointFormat" : "{point.y:.0f}" } } diff --git a/stats/pwc-language-breakdown.json b/stats/pwc-language-breakdown.json index 5b4233d22d..26be3f6c8b 100644 --- a/stats/pwc-language-breakdown.json +++ b/stats/pwc-language-breakdown.json @@ -1,64 +1,77 @@ { + "legend" : { + "enabled" : "false" + }, + "xAxis" : { + "type" : "category" + }, "subtitle" : { - "text" : "Click the columns to drilldown the language breakdown. Last updated at 2023-07-26 18:01:07 GMT" + "text" : "Click the columns to drilldown the language breakdown. Last updated at 2023-07-26 22:11:56 GMT" }, - "plotOptions" : { - "series" : { - "borderWidth" : 0, - "dataLabels" : { - "enabled" : 1, - "format" : "{point.y}" - } + "yAxis" : { + "title" : { + "text" : "Total Solutions" } }, + "chart" : { + "type" : "column" + }, + "title" : { + "text" : "The Weekly Challenge Language" + }, + "tooltip" : { + "headerFormat" : "", + "pointFormat" : "Challenge {point.name}: {point.y:f}
", + "followPointer" : "true" + }, "series" : [ { - "name" : "The Weekly Challenge Languages", + "colorByPoint" : "true", "data" : [ { + "y" : 163, "drilldown" : "001", - "name" : "#001", - "y" : 163 + "name" : "#001" }, { + "y" : 129, "drilldown" : "002", - "name" : "#002", - "y" : 129 + "name" : "#002" }, { + "y" : 87, "name" : "#003", - "drilldown" : "003", - "y" : 87 + "drilldown" : "003" }, { "y" : 103, - "name" : "#004", - "drilldown" : "004" + "drilldown" : "004", + "name" : "#004" }, { - "y" : 80, "drilldown" : "005", - "name" : "#005" + "name" : "#005", + "y" : 80 }, { - "drilldown" : "006", + "y" : 61, "name" : "#006", - "y" : 61 + "drilldown" : "006" }, { - "y" : 69, "drilldown" : "007", - "name" : "#007" + "name" : "#007", + "y" : 69 }, { - "drilldown" : "008", + "y" : 82, "name" : "#008", - "y" : 82 + "drilldown" : "008" }, { - "y" : 80, + "drilldown" : "009", "name" : "#009", - "drilldown" : "009" + "y" : 80 }, { "drilldown" : "010", @@ -66,9 +79,9 @@ "y" : 69 }, { - "y" : 89, "name" : "#011", - "drilldown" : "011" + "drilldown" : "011", + "y" : 89 }, { "y" : 92, @@ -81,19 +94,19 @@ "drilldown" : "013" }, { - "drilldown" : "014", "name" : "#014", + "drilldown" : "014", "y" : 102 }, { - "y" : 101, + "drilldown" : "015", "name" : "#015", - "drilldown" : "015" + "y" : 101 }, { - "drilldown" : "016", + "y" : 75, "name" : "#016", - "y" : 75 + "drilldown" : "016" }, { "y" : 86, @@ -101,14 +114,14 @@ "drilldown" : "017" }, { - "name" : "#018", "drilldown" : "018", + "name" : "#018", "y" : 83 }, { - "y" : 105, + "name" : "#019", "drilldown" : "019", - "name" : "#019" + "y" : 105 }, { "y" : 103, @@ -121,14 +134,14 @@ "drilldown" : "021" }, { + "y" : 72, "drilldown" : "022", - "name" : "#022", - "y" : 72 + "name" : "#022" }, { + "y" : 101, "drilldown" : "023", - "name" : "#023", - "y" : 101 + "name" : "#023" }, { "name" : "#024", @@ -141,9 +154,9 @@ "drilldown" : "025" }, { + "y" : 76, "name" : "#026", - "drilldown" : "026", - "y" : 76 + "drilldown" : "026" }, { "y" : 64, @@ -151,14 +164,14 @@ "drilldown" : "027" }, { - "y" : 82, + "name" : "#028", "drilldown" : "028", - "name" : "#028" + "y" : 82 }, { + "y" : 83, "drilldown" : "029", - "name" : "#029", - "y" : 83 + "name" : "#029" }, { "drilldown" : "030", @@ -166,9 +179,9 @@ "y" : 121 }, { - "drilldown" : "031", + "y" : 93, "name" : "#031", - "y" : 93 + "drilldown" : "031" }, { "y" : 98, @@ -182,23 +195,23 @@ }, { "y" : 70, - "name" : "#034", - "drilldown" : "034" + "drilldown" : "034", + "name" : "#034" }, { - "y" : 68, "name" : "#035", - "drilldown" : "035" + "drilldown" : "035", + "y" : 68 }, { - "drilldown" : "036", "name" : "#036", + "drilldown" : "036", "y" : 70 }, { - "name" : "#037", + "y" : 70, "drilldown" : "037", - "y" : 70 + "name" : "#037" }, { "y" : 74, @@ -206,34 +219,34 @@ "name" : "#038" }, { - "y" : 68, "name" : "#039", - "drilldown" : "039" + "drilldown" : "039", + "y" : 68 }, { "y" : 77, - "name" : "#040", - "drilldown" : "040" + "drilldown" : "040", + "name" : "#040" }, { - "y" : 80, "drilldown" : "041", - "name" : "#041" + "name" : "#041", + "y" : 80 }, { + "y" : 98, "name" : "#042", - "drilldown" : "042", - "y" : 98 + "drilldown" : "042" }, { - "y" : 72, + "drilldown" : "043", "name" : "#043", - "drilldown" : "043" + "y" : 72 }, { - "y" : 90, "drilldown" : "044", - "name" : "#044" + "name" : "#044", + "y" : 90 }, { "y" : 102, @@ -252,12 +265,12 @@ }, { "y" : 112, - "name" : "#048", - "drilldown" : "048" + "drilldown" : "048", + "name" : "#048" }, { - "drilldown" : "049", "name" : "#049", + "drilldown" : "049", "y" : 93 }, { @@ -266,19 +279,19 @@ "drilldown" : "050" }, { - "drilldown" : "051", "name" : "#051", + "drilldown" : "051", "y" : 95 }, { - "name" : "#052", "drilldown" : "052", + "name" : "#052", "y" : 93 }, { - "name" : "#053", + "y" : 105, "drilldown" : "053", - "y" : 105 + "name" : "#053" }, { "name" : "#054", @@ -291,34 +304,34 @@ "y" : 92 }, { - "y" : 104, "name" : "#056", - "drilldown" : "056" + "drilldown" : "056", + "y" : 104 }, { - "drilldown" : "057", "name" : "#057", + "drilldown" : "057", "y" : 86 }, { - "y" : 71, "name" : "#058", - "drilldown" : "058" + "drilldown" : "058", + "y" : 71 }, { "y" : 93, - "drilldown" : "059", - "name" : "#059" + "name" : "#059", + "drilldown" : "059" }, { + "y" : 89, "drilldown" : "060", - "name" : "#060", - "y" : 89 + "name" : "#060" }, { - "y" : 85, + "drilldown" : "061", "name" : "#061", - "drilldown" : "061" + "y" : 85 }, { "y" : 62, @@ -326,9 +339,9 @@ "name" : "#062" }, { + "y" : 93, "name" : "#063", - "drilldown" : "063", - "y" : 93 + "drilldown" : "063" }, { "y" : 84, @@ -336,14 +349,14 @@ "drilldown" : "064" }, { + "y" : 77, "drilldown" : "065", - "name" : "#065", - "y" : 77 + "name" : "#065" }, { - "name" : "#066", + "y" : 88, "drilldown" : "066", - "y" : 88 + "name" : "#066" }, { "drilldown" : "067", @@ -351,58 +364,58 @@ "y" : 94 }, { + "y" : 79, "name" : "#068", - "drilldown" : "068", - "y" : 79 + "drilldown" : "068" }, { "y" : 87, - "name" : "#069", - "drilldown" : "069" + "drilldown" : "069", + "name" : "#069" }, { - "y" : 98, "drilldown" : "070", - "name" : "#070" + "name" : "#070", + "y" : 98 }, { - "name" : "#071", "drilldown" : "071", + "name" : "#071", "y" : 82 }, { - "y" : 116, + "name" : "#072", "drilldown" : "072", - "name" : "#072" + "y" : 116 }, { - "drilldown" : "073", "name" : "#073", + "drilldown" : "073", "y" : 112 }, { - "name" : "#074", "drilldown" : "074", + "name" : "#074", "y" : 117 }, { - "y" : 117, "drilldown" : "075", - "name" : "#075" + "name" : "#075", + "y" : 117 }, { - "y" : 101, + "name" : "#076", "drilldown" : "076", - "name" : "#076" + "y" : 101 }, { "y" : 100, - "drilldown" : "077", - "name" : "#077" + "name" : "#077", + "drilldown" : "077" }, { - "drilldown" : "078", "name" : "#078", + "drilldown" : "078", "y" : 127 }, { @@ -411,34 +424,34 @@ "y" : 122 }, { - "y" : 127, + "name" : "#080", "drilldown" : "080", - "name" : "#080" + "y" : 127 }, { - "y" : 114, + "drilldown" : "081", "name" : "#081", - "drilldown" : "081" + "y" : 114 }, { - "y" : 114, "name" : "#082", - "drilldown" : "082" + "drilldown" : "082", + "y" : 114 }, { + "y" : 127, "name" : "#083", - "drilldown" : "083", - "y" : 127 + "drilldown" : "083" }, { - "drilldown" : "084", + "y" : 119, "name" : "#084", - "y" : 119 + "drilldown" : "084" }, { "y" : 114, - "name" : "#085", - "drilldown" : "085" + "drilldown" : "085", + "name" : "#085" }, { "name" : "#086", @@ -446,33 +459,33 @@ "y" : 104 }, { - "y" : 101, "name" : "#087", - "drilldown" : "087" + "drilldown" : "087", + "y" : 101 }, { - "name" : "#088", "drilldown" : "088", + "name" : "#088", "y" : 121 }, { - "name" : "#089", "drilldown" : "089", + "name" : "#089", "y" : 113 }, { "y" : 113, - "drilldown" : "090", - "name" : "#090" + "name" : "#090", + "drilldown" : "090" }, { + "y" : 108, "drilldown" : "091", - "name" : "#091", - "y" : 108 + "name" : "#091" }, { - "name" : "#092", "drilldown" : "092", + "name" : "#092", "y" : 98 }, { @@ -481,14 +494,14 @@ "name" : "#093" }, { - "y" : 87, "drilldown" : "094", - "name" : "#094" + "name" : "#094", + "y" : 87 }, { "y" : 108, - "name" : "#095", - "drilldown" : "095" + "drilldown" : "095", + "name" : "#095" }, { "y" : 108, @@ -496,29 +509,29 @@ "drilldown" : "096" }, { - "y" : 111, + "drilldown" : "097", "name" : "#097", - "drilldown" : "097" + "y" : 111 }, { - "drilldown" : "098", + "y" : 108, "name" : "#098", - "y" : 108 + "drilldown" : "098" }, { - "drilldown" : "099", + "y" : 97, "name" : "#099", - "y" : 97 + "drilldown" : "099" }, { + "y" : 120, "drilldown" : "100", - "name" : "#100", - "y" : 120 + "name" : "#100" }, { - "y" : 83, + "drilldown" : "101", "name" : "#101", - "drilldown" : "101" + "y" : 83 }, { "y" : 90, @@ -536,18 +549,18 @@ "y" : 85 }, { - "drilldown" : "105", "name" : "#105", + "drilldown" : "105", "y" : 77 }, { + "y" : 97, "drilldown" : "106", - "name" : "#106", - "y" : 97 + "name" : "#106" }, { - "name" : "#107", "drilldown" : "107", + "name" : "#107", "y" : 92 }, { @@ -556,9 +569,9 @@ "drilldown" : "108" }, { - "y" : 109, "drilldown" : "109", - "name" : "#109" + "name" : "#109", + "y" : 109 }, { "y" : 110, @@ -566,29 +579,29 @@ "name" : "#110" }, { - "y" : 93, "drilldown" : "111", - "name" : "#111" + "name" : "#111", + "y" : 93 }, { + "y" : 94, "drilldown" : "112", - "name" : "#112", - "y" : 94 + "name" : "#112" }, { "y" : 94, - "name" : "#113", - "drilldown" : "113" + "drilldown" : "113", + "name" : "#113" }, { - "y" : 110, + "drilldown" : "114", "name" : "#114", - "drilldown" : "114" + "y" : 110 }, { - "name" : "#115", + "y" : 98, "drilldown" : "115", - "y" : 98 + "name" : "#115" }, { "y" : 97, @@ -597,13 +610,13 @@ }, { "y" : 99, - "name" : "#117", - "drilldown" : "117" + "drilldown" : "117", + "name" : "#117" }, { - "y" : 85, "drilldown" : "118", - "name" : "#118" + "name" : "#118", + "y" : 85 }, { "name" : "#119", @@ -617,43 +630,43 @@ }, { "y" : 92, - "drilldown" : "121", - "name" : "#121" + "name" : "#121", + "drilldown" : "121" }, { + "y" : 110, "name" : "#122", - "drilldown" : "122", - "y" : 110 + "drilldown" : "122" }, { - "y" : 105, "drilldown" : "123", - "name" : "#123" + "name" : "#123", + "y" : 105 }, { - "y" : 87, "name" : "#124", - "drilldown" : "124" + "drilldown" : "124", + "y" : 87 }, { + "y" : 65, "name" : "#125", - "drilldown" : "125", - "y" : 65 + "drilldown" : "125" }, { - "y" : 113, "name" : "#126", - "drilldown" : "126" + "drilldown" : "126", + "y" : 113 }, { - "y" : 110, "name" : "#127", - "drilldown" : "127" + "drilldown" : "127", + "y" : 110 }, { - "y" : 73, + "name" : "#128", "drilldown" : "128", - "name" : "#128" + "y" : 73 }, { "drilldown" : "129", @@ -661,9 +674,9 @@ "y" : 52 }, { - "y" : 75, + "name" : "#130", "drilldown" : "130", - "name" : "#130" + "y" : 75 }, { "y" : 91, @@ -671,8 +684,8 @@ "name" : "#131" }, { - "drilldown" : "132", "name" : "#132", + "drilldown" : "132", "y" : 78 }, { @@ -681,63 +694,63 @@ "y" : 95 }, { - "y" : 94, "name" : "#134", - "drilldown" : "134" + "drilldown" : "134", + "y" : 94 }, { - "drilldown" : "135", "name" : "#135", + "drilldown" : "135", "y" : 104 }, { "y" : 97, - "name" : "#136", - "drilldown" : "136" + "drilldown" : "136", + "name" : "#136" }, { - "y" : 100, "name" : "#137", - "drilldown" : "137" + "drilldown" : "137", + "y" : 100 }, { - "y" : 102, "name" : "#138", - "drilldown" : "138" + "drilldown" : "138", + "y" : 102 }, { + "y" : 97, "drilldown" : "139", - "name" : "#139", - "y" : 97 + "name" : "#139" }, { - "y" : 103, + "name" : "#140", "drilldown" : "140", - "name" : "#140" + "y" : 103 }, { - "y" : 102, + "drilldown" : "141", "name" : "#141", - "drilldown" : "141" + "y" : 102 }, { - "y" : 85, "name" : "#142", - "drilldown" : "142" + "drilldown" : "142", + "y" : 85 }, { - "y" : 85, "drilldown" : "143", - "name" : "#143" + "name" : "#143", + "y" : 85 }, { "y" : 90, - "name" : "#144", - "drilldown" : "144" + "drilldown" : "144", + "name" : "#144" }, { - "name" : "#145", "drilldown" : "145", + "name" : "#145", "y" : 96 }, { @@ -746,14 +759,14 @@ "y" : 108 }, { - "name" : "#147", "drilldown" : "147", + "name" : "#147", "y" : 107 }, { "y" : 94, - "name" : "#148", - "drilldown" : "148" + "drilldown" : "148", + "name" : "#148" }, { "y" : 88, @@ -762,8 +775,8 @@ }, { "y" : 108, - "drilldown" : "150", - "name" : "#150" + "name" : "#150", + "drilldown" : "150" }, { "drilldown" : "151", @@ -786,14 +799,14 @@ "name" : "#154" }, { - "name" : "#155", "drilldown" : "155", + "name" : "#155", "y" : 99 }, { - "y" : 98, "drilldown" : "156", - "name" : "#156" + "name" : "#156", + "y" : 98 }, { "drilldown" : "157", @@ -801,28 +814,28 @@ "y" : 97 }, { - "name" : "#158", + "y" : 107, "drilldown" : "158", - "y" : 107 + "name" : "#158" }, { - "name" : "#159", "drilldown" : "159", + "name" : "#159", "y" : 92 }, { - "name" : "#160", "drilldown" : "160", + "name" : "#160", "y" : 121 }, { - "y" : 102, "drilldown" : "161", - "name" : "#161" + "name" : "#161", + "y" : 102 }, { - "drilldown" : "162", "name" : "#162", + "drilldown" : "162", "y" : 93 }, { @@ -831,9 +844,9 @@ "name" : "#163" }, { + "y" : 120, "drilldown" : "164", - "name" : "#164", - "y" : 120 + "name" : "#164" }, { "y" : 80, @@ -846,74 +859,74 @@ "y" : 81 }, { - "y" : 75, + "name" : "#167", "drilldown" : "167", - "name" : "#167" + "y" : 75 }, { - "y" : 98, + "drilldown" : "168", "name" : "#168", - "drilldown" : "168" + "y" : 98 }, { - "y" : 107, "name" : "#169", - "drilldown" : "169" + "drilldown" : "169", + "y" : 107 }, { - "y" : 102, "name" : "#170", - "drilldown" : "170" + "drilldown" : "170", + "y" : 102 }, { + "y" : 113, "drilldown" : "171", - "name" : "#171", - "y" : 113 + "name" : "#171" }, { - "y" : 94, "name" : "#172", - "drilldown" : "172" + "drilldown" : "172", + "y" : 94 }, { - "y" : 111, "drilldown" : "173", - "name" : "#173" + "name" : "#173", + "y" : 111 }, { "y" : 101, - "name" : "#174", - "drilldown" : "174" + "drilldown" : "174", + "name" : "#174" }, { - "y" : 114, "drilldown" : "175", - "name" : "#175" + "name" : "#175", + "y" : 114 }, { - "name" : "#176", + "y" : 114, "drilldown" : "176", - "y" : 114 + "name" : "#176" }, { - "y" : 107, + "name" : "#177", "drilldown" : "177", - "name" : "#177" + "y" : 107 }, { "y" : 67, - "name" : "#178", - "drilldown" : "178" + "drilldown" : "178", + "name" : "#178" }, { - "name" : "#179", + "y" : 74, "drilldown" : "179", - "y" : 74 + "name" : "#179" }, { - "name" : "#180", + "y" : 117, "drilldown" : "180", - "y" : 117 + "name" : "#180" }, { "y" : 99, @@ -921,29 +934,29 @@ "drilldown" : "181" }, { - "name" : "#182", + "y" : 110, "drilldown" : "182", - "y" : 110 + "name" : "#182" }, { - "y" : 87, "name" : "#183", - "drilldown" : "183" + "drilldown" : "183", + "y" : 87 }, { - "y" : 109, + "drilldown" : "184", "name" : "#184", - "drilldown" : "184" + "y" : 109 }, { - "y" : 117, "name" : "#185", - "drilldown" : "185" + "drilldown" : "185", + "y" : 117 }, { - "y" : 113, + "drilldown" : "186", "name" : "#186", - "drilldown" : "186" + "y" : 113 }, { "drilldown" : "187", @@ -951,9 +964,9 @@ "y" : 109 }, { - "y" : 119, "drilldown" : "188", - "name" : "#188" + "name" : "#188", + "y" : 119 }, { "drilldown" : "189", @@ -961,19 +974,19 @@ "y" : 117 }, { - "drilldown" : "190", + "y" : 111, "name" : "#190", - "y" : 111 + "drilldown" : "190" }, { - "y" : 117, "name" : "#191", - "drilldown" : "191" + "drilldown" : "191", + "y" : 117 }, { - "drilldown" : "192", + "y" : 127, "name" : "#192", - "y" : 127 + "drilldown" : "192" }, { "drilldown" : "193", @@ -981,44 +994,44 @@ "y" : 112 }, { - "y" : 111, + "drilldown" : "194", "name" : "#194", - "drilldown" : "194" + "y" : 111 }, { - "drilldown" : "195", "name" : "#195", + "drilldown" : "195", "y" : 108 }, { + "y" : 102, "name" : "#196", - "drilldown" : "196", - "y" : 102 + "drilldown" : "196" }, { - "drilldown" : "197", "name" : "#197", + "drilldown" : "197", "y" : 102 }, { + "y" : 116, "drilldown" : "198", - "name" : "#198", - "y" : 116 + "name" : "#198" }, { + "y" : 116, "drilldown" : "199", - "name" : "#199", - "y" : 116 + "name" : "#199" }, { "y" : 115, - "name" : "#200", - "drilldown" : "200" + "drilldown" : "200", + "name" : "#200" }, { + "y" : 111, "drilldown" : "201", - "name" : "#201", - "y" : 111 + "name" : "#201" }, { "y" : 104, @@ -1026,9 +1039,9 @@ "drilldown" : "202" }, { + "y" : 98, "drilldown" : "203", - "name" : "#203", - "y" : 98 + "name" : "#203" }, { "y" : 111, @@ -1036,14 +1049,14 @@ "name" : "#204" }, { + "y" : 120, "name" : "#205", - "drilldown" : "205", - "y" : 120 + "drilldown" : "205" }, { - "y" : 113, + "drilldown" : "206", "name" : "#206", - "drilldown" : "206" + "y" : 113 }, { "name" : "#207", @@ -1056,19 +1069,19 @@ "name" : "#208" }, { - "name" : "#209", "drilldown" : "209", + "name" : "#209", "y" : 102 }, { - "drilldown" : "210", "name" : "#210", + "drilldown" : "210", "y" : 94 }, { - "y" : 109, + "name" : "#211", "drilldown" : "211", - "name" : "#211" + "y" : 109 }, { "drilldown" : "212", @@ -1076,8 +1089,8 @@ "y" : 105 }, { - "drilldown" : "213", "name" : "#213", + "drilldown" : "213", "y" : 100 }, { @@ -1086,24 +1099,24 @@ "y" : 69 }, { - "name" : "#215", "drilldown" : "215", + "name" : "#215", "y" : 115 }, { - "name" : "#216", + "y" : 87, "drilldown" : "216", - "y" : 87 + "name" : "#216" }, { "y" : 115, - "drilldown" : "217", - "name" : "#217" + "name" : "#217", + "drilldown" : "217" }, { + "y" : 83, "drilldown" : "218", - "name" : "#218", - "y" : 83 + "name" : "#218" }, { "name" : "#219", @@ -1111,29 +1124,29 @@ "y" : 81 }, { - "y" : 98, "drilldown" : "220", - "name" : "#220" + "name" : "#220", + "y" : 98 }, { + "y" : 82, "name" : "#221", - "drilldown" : "221", - "y" : 82 + "drilldown" : "221" }, { - "name" : "#222", "drilldown" : "222", + "name" : "#222", "y" : 105 }, { + "y" : 85, "name" : "#223", - "drilldown" : "223", - "y" : 85 + "drilldown" : "223" }, { - "y" : 74, "name" : "#224", - "drilldown" : "224" + "drilldown" : "224", + "y" : 74 }, { "y" : 111, @@ -1141,33 +1154,23 @@ "name" : "#225" }, { + "y" : 114, "drilldown" : "226", - "name" : "#226", - "y" : 114 + "name" : "#226" }, { - "y" : 48, "name" : "#227", - "drilldown" : "227" + "drilldown" : "227", + "y" : 54 } ], - "colorByPoint" : "true" + "name" : "The Weekly Challenge Languages" } ], - "legend" : { - "enabled" : "false" - }, - "tooltip" : { - "followPointer" : "true", - "pointFormat" : "Challenge {point.name}: {point.y:f}
", - "headerFormat" : "" - }, - "xAxis" : { - "type" : "category" - }, "drilldown" : { "series" : [ { + "name" : "001", "id" : "001", "data" : [ [ @@ -1182,11 +1185,9 @@ "Blog", 11 ] - ], - "name" : "001" + ] }, { - "id" : "002", "name" : "002", "data" : [ [ @@ -1201,9 +1202,12 @@ "Blog", 10 ] - ] + ], + "id" : "002" }, { + "name" : "003", + "id" : "003", "data" : [ [ "Perl", @@ -1217,13 +1221,10 @@ "Blog", 9 ] - ], - "name" : "003", - "id" : "003" + ] }, { "id" : "004", - "name" : "004", "data" : [ [ "Perl", @@ -1237,7 +1238,8 @@ "Blog", 10 ] - ] + ], + "name" : "004" }, { "data" : [ @@ -1254,12 +1256,12 @@ 12 ] ], - "name" : "005", - "id" : "005" + "id" : "005", + "name" : "005" }, { - "id" : "006", "name" : "006", + "id" : "006", "data" : [ [ "Perl", @@ -1276,7 +1278,6 @@ ] }, { - "id" : "007", "name" : "007", "data" : [ [ @@ -1291,11 +1292,12 @@ "Blog", 10 ] - ] + ], + "id" : "007" }, { - "id" : "008", "name" : "008", + "id" : "008", "data" : [ [ "Perl", @@ -1312,7 +1314,6 @@ ] }, { - "name" : "009", "data" : [ [ "Perl", @@ -1327,9 +1328,12 @@ 13 ] ], - "id" : "009" + "id" : "009", + "name" : "009" }, { + "name" : "010", + "id" : "010", "data" : [ [ "Perl", @@ -1343,12 +1347,11 @@ "Blog", 11 ] - ], - "name" : "010", - "id" : "010" + ] }, { "name" : "011", + "id" : "011", "data" : [ [ "Perl", @@ -1362,10 +1365,10 @@ "Blog", 10 ] - ], - "id" : "011" + ] }, { + "name" : "012", "data" : [ [ "Perl", @@ -1380,7 +1383,6 @@ 11 ] ], - "name" : "012", "id" : "012" }, { @@ -1402,6 +1404,8 @@ "id" : "013" }, { + "name" : "014", + "id" : "014", "data" : [ [ "Perl", @@ -1415,13 +1419,11 @@ "Blog", 15 ] - ], - "name" : "014", - "id" : "014" + ] }, { - "id" : "015", "name" : "015", + "id" : "015", "data" : [ [ "Perl", @@ -1439,7 +1441,6 @@ }, { "id" : "016", - "name" : "016", "data" : [ [ "Perl", @@ -1453,7 +1454,8 @@ "Blog", 13 ] - ] + ], + "name" : "016" }, { "id" : "017", @@ -1474,6 +1476,8 @@ "name" : "017" }, { + "name" : "018", + "id" : "018", "data" : [ [ "Perl", @@ -1487,12 +1491,11 @@ "Blog", 14 ] - ], - "name" : "018", - "id" : "018" + ] }, { "name" : "019", + "id" : "019", "data" : [ [ "Perl", @@ -1506,12 +1509,9 @@ "Blog", 13 ] - ], - "id" : "019" + ] }, { - "id" : "020", - "name" : "020", "data" : [ [ "Perl", @@ -1525,7 +1525,9 @@ "Blog", 13 ] - ] + ], + "id" : "020", + "name" : "020" }, { "name" : "021", @@ -1546,6 +1548,7 @@ "id" : "021" }, { + "id" : "022", "data" : [ [ "Perl", @@ -1560,11 +1563,10 @@ 10 ] ], - "name" : "022", - "id" : "022" + "name" : "022" }, { - "name" : "023", + "id" : "023", "data" : [ [ "Perl", @@ -1579,11 +1581,9 @@ 12 ] ], - "id" : "023" + "name" : "023" }, { - "id" : "024", - "name" : "024", "data" : [ [ "Perl", @@ -1597,10 +1597,11 @@ "Blog", 11 ] - ] + ], + "id" : "024", + "name" : "024" }, { - "id" : "025", "name" : "025", "data" : [ [ @@ -1615,10 +1616,10 @@ "Blog", 12 ] - ] + ], + "id" : "025" }, { - "id" : "026", "data" : [ [ "Perl", @@ -1633,10 +1634,10 @@ 10 ] ], + "id" : "026", "name" : "026" }, { - "id" : "027", "name" : "027", "data" : [ [ @@ -1651,11 +1652,11 @@ "Blog", 9 ] - ] + ], + "id" : "027" }, { "id" : "028", - "name" : "028", "data" : [ [ "Perl", @@ -1669,9 +1670,11 @@ "Blog", 9