From b2b2098467ee3b0133c155ee256168f53056492b Mon Sep 17 00:00:00 2001 From: Mohammad S Anwar Date: Sun, 15 Dec 2019 14:54:28 +0000 Subject: - Added solutions by Kevin Colyer. --- challenge-038/kevin-colyer/perl6/ch-1.p6 | 44 ++ challenge-038/kevin-colyer/perl6/ch-2.p6 | 163 ++++++ stats/pwc-current.json | 161 +++--- stats/pwc-language-breakdown-summary.json | 74 +-- stats/pwc-language-breakdown.json | 556 +++++++++---------- stats/pwc-leaders.json | 882 +++++++++++++++--------------- stats/pwc-summary-1-30.json | 100 ++-- stats/pwc-summary-121-150.json | 52 +- stats/pwc-summary-31-60.json | 130 ++--- stats/pwc-summary-61-90.json | 104 ++-- stats/pwc-summary-91-120.json | 44 +- stats/pwc-summary.json | 318 +++++------ 12 files changed, 1425 insertions(+), 1203 deletions(-) create mode 100644 challenge-038/kevin-colyer/perl6/ch-1.p6 create mode 100644 challenge-038/kevin-colyer/perl6/ch-2.p6 diff --git a/challenge-038/kevin-colyer/perl6/ch-1.p6 b/challenge-038/kevin-colyer/perl6/ch-1.p6 new file mode 100644 index 0000000000..0e4d9823ed --- /dev/null +++ b/challenge-038/kevin-colyer/perl6/ch-1.p6 @@ -0,0 +1,44 @@ +#!/usr/bin/perl6 + +use v6; + +use Test; + +=begin pod + +Task 38.1 + +Date Finder +Create a script to accept a 7 digits number, where the first number can only be 1 or 2. The second and third digits can be anything 0-9. The fourth and fifth digits corresponds to the month i.e. 01,02,03…,11,12. And the last 2 digits respresents the days in the month i.e. 01,02,03….29,30,31. Your script should validate if the given number is valid as per the rule and then convert into human readable format date. + +RULES +1) If 1st digit is 1, then prepend 20 otherwise 19 to the 2nd and 3rd digits to make it 4-digits year. + +2) The 4th and 5th digits together should be a valid month. + +3) The 6th and 7th digits together should be a valid day for the above month. + +For example, the given number is 2230120, it should print 1923-01-20. + +=end pod + +is validate(2230120), "1923-01-20", "Example given"; +is validate(1230120), "2023-01-20", "Example"; +like validate(2230229), /'Day out of range'/,"not a Leap year"; +like validate(2230631), /'Day out of range'/,"only 30 days in june"; +like validate(2231330), /'Month out of range'/,"only 12 months"; +like validate(22313301),/'Input must be only 7'/,"only 7 digits"; +done-testing; + +sub validate($d where *>0) { + my $s=$d.Str; + return "Input must be only 7 digits in length" if $d.chars!==7; + my ($day,$month,$year,$mill) = $d.polymod(100,100,100); + return "First digit must be either 1 or 2" if 0 > $mill > 2; + $year+=$mill==1 ?? 2000 !! 1900 ; + my $date; + try { $date = DateTime.new(year => $year, month => $month, day => $day); + CATCH { return .Str } + }; + return $date.Date; +} diff --git a/challenge-038/kevin-colyer/perl6/ch-2.p6 b/challenge-038/kevin-colyer/perl6/ch-2.p6 new file mode 100644 index 0000000000..a170979826 --- /dev/null +++ b/challenge-038/kevin-colyer/perl6/ch-2.p6 @@ -0,0 +1,163 @@ +#!/usr/bin/perl6 +use v6; + +use Test; + +=begin pod + +Task 38.2 + +Word Game +Lets assume we have tiles as listed below, with an alphabet (A..Z) printed on them. Each tile has a value, e.g. A (1 point), B (4 points) etc. You are allowed to draw 7 tiles from the lot randomly. Then try to form a word using the 7 tiles with maximum points altogether. You don’t have to use all the 7 tiles to make a word. You should try to use as many tiles as possible to get the maximum points. + +For example, A (x8) means there are 8 tiles with letter A. + +... + +=end pod + +my %points; +%points= 1 xx * ; +%points = 2 xx * ; +%points = 3 xx * ; +%points = 4 xx * ; +%points = 5 xx * ; +%points = 10 xx * ; + + +my %tilebag is BagHash = + :A(8), :G(3), :I(5), :S(7), :U(5), :X(2), :Z(5), + :E(9), :J(3), :L(3), :R(3), :V(3), :Y(5), + :F(3), :D(3), :P(5), :W(5), + :B(5), :N(4), + :T(5), :O(3), :H(3), :M(4), :C(4), + :K(2), :Q(2), +; + + +my %wordlist; +# change to use a better dictionary - system directory is not a great one! +my $dict="/usr/share/dict/words"; + +my $cache="myWordList.txt"; +if $cache.IO.e == False { + + say "Processessing wordlist and caching..."; + say " Slurping..."; + # slurp in dictionary, split on lines, filter any comments (other dictionarys may have them) + # trim by using .words (just in case), filter to length we want and remove punctuation and Acented words + my @words=slurp($dict).uc.lines.grep( * !~~ /^ '#' / ).words.grep( *.chars <= 7 ).grep( * !~~ / <-[A..Z]> / ); + say " Pre-computing..."; + for @words { + %wordlist{$_.comb.sort.join} = [scoreTiles( $_.comb ), $_]; + } + say " Spurting {%wordlist.elems} words..."; + $cache.IO.spurt(%wordlist); + +} else { + + say "Loading cached wordlist..."; + for $cache.IO.slurp.lines.words -> $a, $b, $c { + %wordlist{$a}= [$b,$c]; + } + say " Loaded {%wordlist.elems} words."; + +} + +sub drawTiles ($num is copy = 7) { + my @tiles; + while $num>0 and %tilebag.total>0 { + my $t=%tilebag.roll; + %tilebag{$t}--; + @tiles.push: $t; + $num--; + } + return @tiles; +} + +sub scoreTiles (@cand) { + [+] (%points{$_} for @cand); +} + +# create all combinations of words, check if exist and score +# note .combinations does not every anagrams so sort and compare with pre-sorted dictionary to find a word +sub makeWords(@tiles) { + my @result = "", 0; + for @tiles.combinations -> @cand { + next if @cand.elems < 2; + my $cand=@cand.sort.join; + next unless %wordlist{$cand}:exists; + my ($s,$w)= %wordlist{$cand}; + if $s > @result[1] and $cand.chars => @result[0].chars { + @result[0,1]=$w,$s; + }; + } + return @result; +} + +sub removeTiles(@hand is copy,@tiles) { + my $i; + for @tiles -> $t { + $i = @hand.first: * eq $t, :k; + @hand.splice( $i, 1 ); + } + return @hand; +} + +##################################################### + +#| Tests +multi MAIN('test') { + is makeWords(),("CENS",12),"test"; # will depend on how good your dictionary is... + is removeTiles(, ), ,"test removeTiles"; + is removeTiles(, ), ,"test removeTiles"; + is removeTiles(, ), (),"test removeTiles"; + done-testing; +} + +#| Draw tiles and make a word +multi MAIN() { + my @hand=drawTiles; + say @hand ~ " gives " ~ makeWords(@hand).gist; +} + +#| Suggest a set of seven letters to solve eg suggest lemons +multi MAIN('suggest', Str $tiles) { + my $t=$tiles.words.uc; + die "Only 7 letters please" if $t.chars>7; + my $start=now; + my @answer=makeWords($t.comb); + my $elapsed=now - $start; + if @answer[1]>0 { + say "Using [$t] the best word to make is [{@answer[0]}] scoring {@answer[1]} points in $elapsed seconds"; + } else { + say "I can't make any words from [$t] ($elapsed seconds)"; + } +} + +#| Start by selecting tiles and make words for as long as possible +multi MAIN('play') { + my @hand; + my $total; + loop { + my @next=drawTiles(7-@hand.elems); + # no more tiles... + if @next==0 { + say "Run out of tiles!"; + last; + }; + @hand.append: @next; + @hand=@hand.sort; + + my ($w,$s) = makeWords(@hand); + # no possible score... + if $s==0 { #last + say "Can't make a word from {@hand.sort.gist}"; + last; + }; + + $total+=$s; + say "{@hand.gist} => '$w' scoring $s (total: $total)"; + @hand=removeTiles(@hand,$w.comb); + } +} diff --git a/stats/pwc-current.json b/stats/pwc-current.json index 5ab5efcfba..1b24bbe9bf 100644 --- a/stats/pwc-current.json +++ b/stats/pwc-current.json @@ -1,32 +1,33 @@ { - "xAxis" : { - "type" : "category" + "chart" : { + "type" : "column" }, "title" : { "text" : "Perl Weekly Challenge - 038" }, "series" : [ { + "name" : "Perl Weekly Challenge - 038", "data" : [ { "drilldown" : "Andrezgz", - "y" : 2, - "name" : "Andrezgz" + "name" : "Andrezgz", + "y" : 2 }, { - "drilldown" : "Arne Sommer", "y" : 3, - "name" : "Arne Sommer" + "name" : "Arne Sommer", + "drilldown" : "Arne Sommer" }, { "name" : "Daniel Mita", - "y" : 2, - "drilldown" : "Daniel Mita" + "drilldown" : "Daniel Mita", + "y" : 2 }, { "name" : "Dave Jacoby", - "y" : 3, - "drilldown" : "Dave Jacoby" + "drilldown" : "Dave Jacoby", + "y" : 3 }, { "y" : 2, @@ -34,9 +35,9 @@ "drilldown" : "Duane Powell" }, { - "name" : "E. Choroba", "y" : 3, - "drilldown" : "E. Choroba" + "drilldown" : "E. Choroba", + "name" : "E. Choroba" }, { "drilldown" : "Javier Luque", @@ -44,24 +45,29 @@ "y" : 5 }, { - "drilldown" : "Noud", + "y" : 2, + "drilldown" : "Kevin Colyer", + "name" : "Kevin Colyer" + }, + { "name" : "Noud", + "drilldown" : "Noud", "y" : 2 }, { "y" : 1, - "name" : "Pete Houston", - "drilldown" : "Pete Houston" + "drilldown" : "Pete Houston", + "name" : "Pete Houston" }, { - "name" : "Roger Bell West", "y" : 4, - "drilldown" : "Roger Bell West" + "drilldown" : "Roger Bell West", + "name" : "Roger Bell West" }, { - "y" : 4, + "drilldown" : "Ruben Westerberg", "name" : "Ruben Westerberg", - "drilldown" : "Ruben Westerberg" + "y" : 4 }, { "drilldown" : "Ryan Thompson", @@ -69,62 +75,42 @@ "y" : 4 }, { + "y" : 2, "drilldown" : "Saif Ahmed", - "name" : "Saif Ahmed", - "y" : 2 + "name" : "Saif Ahmed" }, { - "drilldown" : "Simon Proctor", "y" : 2, + "drilldown" : "Simon Proctor", "name" : "Simon Proctor" }, { - "name" : "Steven Wilson", "y" : 1, - "drilldown" : "Steven Wilson" + "drilldown" : "Steven Wilson", + "name" : "Steven Wilson" } ], - "name" : "Perl Weekly Challenge - 038", "colorByPoint" : 1 } ], - "legend" : { - "enabled" : 0 - }, - "chart" : { - "type" : "column" - }, - "tooltip" : { - "followPointer" : 1, - "headerFormat" : "{series.name}
", - "pointFormat" : "{point.name}: {point.y:f}
" - }, - "subtitle" : { - "text" : "[Champions: 15] Last updated at 2019-12-15 03:44:08 GMT" - }, - "plotOptions" : { - "series" : { - "dataLabels" : { - "format" : "{point.y}", - "enabled" : 1 - }, - "borderWidth" : 0 + "yAxis" : { + "title" : { + "text" : "Total Solutions" } }, "drilldown" : { "series" : [ { + "name" : "Andrezgz", "data" : [ [ "Perl 5", 2 ] ], - "name" : "Andrezgz", "id" : "Andrezgz" }, { - "name" : "Arne Sommer", "data" : [ [ "Perl 6", @@ -135,21 +121,21 @@ 1 ] ], + "name" : "Arne Sommer", "id" : "Arne Sommer" }, { - "name" : "Daniel Mita", + "id" : "Daniel Mita", "data" : [ [ "Perl 6", 2 ] ], - "id" : "Daniel Mita" + "name" : "Daniel Mita" }, { "id" : "Dave Jacoby", - "name" : "Dave Jacoby", "data" : [ [ "Perl 5", @@ -159,17 +145,18 @@ "Blog", 1 ] - ] + ], + "name" : "Dave Jacoby" }, { - "id" : "Duane Powell", - "name" : "Duane Powell", "data" : [ [ "Perl 5", 2 ] - ] + ], + "name" : "Duane Powell", + "id" : "Duane Powell" }, { "id" : "E. Choroba", @@ -186,7 +173,7 @@ "name" : "E. Choroba" }, { - "name" : "Javier Luque", + "id" : "Javier Luque", "data" : [ [ "Perl 5", @@ -201,30 +188,39 @@ 1 ] ], - "id" : "Javier Luque" + "name" : "Javier Luque" }, { - "name" : "Noud", "data" : [ [ "Perl 6", 2 ] ], - "id" : "Noud" + "name" : "Kevin Colyer", + "id" : "Kevin Colyer" }, { + "id" : "Noud", + "data" : [ + [ + "Perl 6", + 2 + ] + ], + "name" : "Noud" + }, + { + "id" : "Pete Houston", "data" : [ [ "Perl 5", 1 ] ], - "name" : "Pete Houston", - "id" : "Pete Houston" + "name" : "Pete Houston" }, { - "id" : "Roger Bell West", "name" : "Roger Bell West", "data" : [ [ @@ -235,9 +231,11 @@ "Perl 6", 2 ] - ] + ], + "id" : "Roger Bell West" }, { + "name" : "Ruben Westerberg", "data" : [ [ "Perl 5", @@ -248,11 +246,9 @@ 2 ] ], - "name" : "Ruben Westerberg", "id" : "Ruben Westerberg" }, { - "name" : "Ryan Thompson", "data" : [ [ "Perl 5", @@ -263,43 +259,62 @@ 2 ] ], + "name" : "Ryan Thompson", "id" : "Ryan Thompson" }, { - "name" : "Saif Ahmed", + "id" : "Saif Ahmed", "data" : [ [ "Perl 5", 2 ] ], - "id" : "Saif Ahmed" + "name" : "Saif Ahmed" }, { - "name" : "Simon Proctor", + "id" : "Simon Proctor", "data" : [ [ "Perl 6", 2 ] ], - "id" : "Simon Proctor" + "name" : "Simon Proctor" }, { + "name" : "Steven Wilson", "data" : [ [ "Perl 5", 1 ] ], - "name" : "Steven Wilson", "id" : "Steven Wilson" } ] }, - "yAxis" : { - "title" : { - "text" : "Total Solutions" + "xAxis" : { + "type" : "category" + }, + "legend" : { + "enabled" : 0 + }, + "subtitle" : { + "text" : "[Champions: 16] Last updated at 2019-12-15 14:54:00 GMT" + }, + "plotOptions" : { + "series" : { + "dataLabels" : { + "enabled" : 1, + "format" : "{point.y}" + }, + "borderWidth" : 0 } + }, + "tooltip" : { + "followPointer" : 1, + "pointFormat" : "{point.name}: {point.y:f}
", + "headerFormat" : "{series.name}
" } } diff --git a/stats/pwc-language-breakdown-summary.json b/stats/pwc-language-breakdown-summary.json index 6e7ac18407..b3da4390da 100644 --- a/stats/pwc-language-breakdown-summary.json +++ b/stats/pwc-language-breakdown-summary.json @@ -1,12 +1,6 @@ { - "title" : { - "text" : "Perl Weekly Challenge Contributions - 2019" - }, - "tooltip" : { - "pointFormat" : "{point.y:.0f}" - }, - "chart" : { - "type" : "column" + "subtitle" : { + "text" : "Last updated at 2019-12-15 14:54:10 GMT" }, "yAxis" : { "title" : { @@ -14,24 +8,23 @@ }, "min" : 0 }, - "xAxis" : { - "labels" : { - "style" : { - "fontSize" : "13px", - "fontFamily" : "Verdana, sans-serif" - } - }, - "type" : "category" - }, - "subtitle" : { - "text" : "Last updated at 2019-12-15 03:44:13 GMT" - }, - "legend" : { - "enabled" : "false" + "tooltip" : { + "pointFormat" : "{point.y:.0f}" }, "series" : [ { - "name" : "Contributions", + "dataLabels" : { + "y" : 10, + "rotation" : -90, + "align" : "right", + "format" : "{point.y:.0f}", + "color" : "#FFFFFF", + "style" : { + "fontFamily" : "Verdana, sans-serif", + "fontSize" : "13px" + }, + "enabled" : "true" + }, "data" : [ [ "Blog", @@ -43,21 +36,28 @@ ], [ "Perl 6", - 939 + 941 ] ], - "dataLabels" : { - "rotation" : -90, - "format" : "{point.y:.0f}", - "enabled" : "true", - "style" : { - "fontFamily" : "Verdana, sans-serif", - "fontSize" : "13px" - }, - "color" : "#FFFFFF", - "align" : "right", - "y" : 10 - } + "name" : "Contributions" } - ] + ], + "chart" : { + "type" : "column" + }, + "legend" : { + "enabled" : "false" + }, + "xAxis" : { + "labels" : { + "style" : { + "fontFamily" : "Verdana, sans-serif", + "fontSize" : "13px" + } + }, + "type" : "category" + }, + "title" : { + "text" : "Perl Weekly Challenge Contributions - 2019" + } } diff --git a/stats/pwc-language-breakdown.json b/stats/pwc-language-breakdown.json index 35a120f5b5..ad8801ff5d 100644 --- a/stats/pwc-language-breakdown.json +++ b/stats/pwc-language-breakdown.json @@ -1,24 +1,239 @@ { + "title" : { + "text" : "Perl Weekly Challenge Language" + }, + "xAxis" : { + "type" : "category" + }, + "legend" : { + "enabled" : "false" + }, + "chart" : { + "type" : "column" + }, "tooltip" : { - "pointFormat" : "Challenge {point.name}: {point.y:f}
", "followPointer" : "true", + "pointFormat" : "Challenge {point.name}: {point.y:f}
", "headerFormat" : "" }, - "chart" : { - "type" : "column" + "series" : [ + { + "name" : "Perl Weekly Challenge Languages", + "colorByPoint" : "true", + "data" : [ + { + "name" : "#001", + "y" : 136, + "drilldown" : "001" + }, + { + "drilldown" : "002", + "y" : 104, + "name" : "#002" + }, + { + "y" : 67, + "drilldown" : "003", + "name" : "#003" + }, + { + "y" : 87, + "drilldown" : "004", + "name" : "#004" + }, + { + "name" : "#005", + "drilldown" : "005", + "y" : 67 + }, + { + "name" : "#006", + "drilldown" : "006", + "y" : 48 + }, + { + "y" : 56, + "drilldown" : "007", + "name" : "#007" + }, + { + "name" : "#008", + "y" : 70, + "drilldown" : "008" + }, + { + "drilldown" : "009", + "y" : 68, + "name" : "#009" + }, + { + "y" : 60, + "drilldown" : "010", + "name" : "#010" + }, + { + "name" : "#011", + "y" : 79, + "drilldown" : "011" + }, + { + "name" : "#012", + "drilldown" : "012", + "y" : 83 + }, + { + "name" : "#013", + "drilldown" : "013", + "y" : 76 + }, + { + "y" : 96, + "drilldown" : "014", + "name" : "#014" + }, + { + "name" : "#015", + "drilldown" : "015", + "y" : 93 + }, + { + "y" : 66, + "drilldown" : "016", + "name" : "#016" + }, + { + "drilldown" : "017", + "y" : 79, + "name" : "#017" + }, + { + "name" : "#018", + "y" : 76, + "drilldown" : "018" + }, + { + "y" : 95, + "drilldown" : "019", + "name" : "#019" + }, + { + "y" : 95, + "drilldown" : "020", + "name" : "#020" + }, + { + "name" : "#021", + "y" : 67, + "drilldown" : "021" + }, + { + "drilldown" : "022", + "y" : 63, + "name" : "#022" + }, + { + "y" : 91, + "drilldown" : "023", + "name" : "#023" + }, + { + "name" : "#024", + "y" : 70, + "drilldown" : "024" + }, + { + "name" : "#025", + "drilldown" : "025", + "y" : 55 + }, + { + "y" : 70, + "drilldown" : "026", + "name" : "#026" + }, + { + "y" : 58, + "drilldown" : "027", + "name" : "#027" + }, + { + "y" : 78, + "drilldown" : "028", + "name" : "#028" + }, + { + "y" : 77, + "drilldown" : "029", + "name" : "#029" + }, + { + "y" : 115, + "drilldown" : "030", + "name" : "#030" + }, + { + "y" : 87, + "drilldown" : "031", + "name" : "#031" + }, + { + "name" : "#032", + "y" : 92, + "drilldown" : "032" + }, + { + "y" : 108, + "drilldown" : "033", + "name" : "#033" + }, + { + "name" : "#034", + "y" : 60, + "drilldown" : "034" + }, + { + "y" : 60, + "drilldown" : "035", + "name" : "#035" + }, + { + "name" : "#036", + "y" : 61, + "drilldown" : "036" + }, + { + "name" : "#037", + "drilldown" : "037", + "y" : 61 + }, + { + "drilldown" : "038", + "y" : 43, + "name" : "#038" + } + ] + } + ], + "plotOptions" : { + "series" : { + "dataLabels" : { + "enabled" : 1, + "format" : "{point.y}" + }, + "borderWidth" : 0 + } }, "yAxis" : { "title" : { "text" : "Total Solutions" } }, - "title" : { - "text" : "Perl Weekly Challenge Language" + "subtitle" : { + "text" : "Click the columns to drilldown the language breakdown. Last updated at 2019-12-15 14:54:10 GMT" }, "drilldown" : { "series" : [ { - "name" : "001", "data" : [ [ "Perl 5", @@ -33,9 +248,11 @@ 11 ] ], - "id" : "001" + "id" : "001", + "name" : "001" }, { + "name" : "002", "data" : [ [ "Perl 5", @@ -50,10 +267,11 @@ 9 ] ], - "name" : "002", "id" : "002" }, { + "name" : "003", + "id" : "003", "data" : [ [ "Perl 5", @@ -67,12 +285,10 @@ "Blog", 9 ] - ], - "name" : "003", - "id" : "003" + ] }, { - "name" : "004", + "id" : "004", "data" : [ [ "Perl 5", @@ -87,10 +303,9 @@ 10 ] ], - "id" : "004" + "name" : "004" }, { - "id" : "005", "name" : "005", "data" : [ [ @@ -105,11 +320,10 @@ "Blog", 12 ] - ] + ], + "id" : "005" }, { - "id" : "006", - "name" : "006", "data" : [ [ "Perl 5", @@ -123,7 +337,9 @@ "Blog", 7 ] - ] + ], + "id" : "006", + "name" : "006" }, { "name" : "007", @@ -144,7 +360,6 @@ "id" : "007" }, { - "name" : "008", "data" : [ [ "Perl 5", @@ -159,9 +374,11 @@ 12 ] ], - "id" : "008" + "id" : "008", + "name" : "008" }, { + "id" : "009", "data" : [ [ "Perl 5", @@ -176,11 +393,9 @@ 13 ] ], - "name" : "009", - "id" : "009" + "name" : "009" }, { - "name" : "010", "data" : [ [ "Perl 5", @@ -195,10 +410,10 @@ 11 ] ], - "id" : "010" + "id" : "010", + "name" : "010" }, { - "id" : "011", "name" : "011", "data" : [ [ @@ -213,11 +428,12 @@ "Blog", 10 ] - ] + ], + "id" : "011" }, { - "id" : "012", "name" : "012", + "id" : "012", "data" : [ [ "Perl 5", @@ -234,6 +450,7 @@ ] }, { + "name" : "013", "data" : [ [ "Perl 5", @@ -248,11 +465,10 @@ 13 ] ], - "name" : "013", "id" : "013" }, { - "id" : "014", + "name" : "014", "data" : [ [ "Perl 5", @@ -267,7 +483,7 @@ 15 ] ], - "name" : "014" + "id" : "014" }, { "id" : "015", @@ -288,8 +504,8 @@ "name" : "015" }, { - "id" : "016", "name" : "016", + "id" : "016", "data" : [ [ "Perl 5", @@ -306,6 +522,7 @@ ] }, { + "id" : "017", "data" : [ [ "Perl 5", @@ -320,10 +537,10 @@ 12 ] ], - "name" : "017", - "id" : "017" + "name" : "017" }, { + "name" : "018", "data" : [ [ "Perl 5", @@ -338,11 +555,10 @@ 14 ] ], - "name" : "018", "id" : "018" }, { - "name" : "019", + "id" : "019", "data" : [ [ "Perl 5", @@ -357,7 +573,7 @@ 13 ] ], - "id" : "019" + "name" : "019" }, { "name" : "020", @@ -378,6 +594,7 @@ "id" : "020" }, { + "name" : "021", "data" : [ [ "Perl 5", @@ -392,11 +609,11 @@ 10 ] ], - "name" : "021", "id" : "021" }, { "name" : "022", + "id" : "022", "data" : [ [ "Perl 5", @@ -410,11 +627,10 @@ "Blog", 10 ] - ], - "id" : "022" + ] }, { - "name" : "023", + "id" : "023", "data" : [ [ "Perl 5", @@ -429,9 +645,11 @@ 12 ] ], - "id" : "023" + "name" : "023" }, { + "name" : "024", + "id" : "024", "data" : [ [ "Perl 5", @@ -445,13 +663,11 @@ "Blog", 11 ] - ], - "name" : "024", - "id" : "024" + ] }, { - "id" : "025", "name" : "025", + "id" : "025", "data" : [ [ "Perl 5", @@ -468,8 +684,8 @@ ] }, { - "id" : "026", "name" : "026", + "id" : "026", "data" : [ [ "Perl 5", @@ -486,7 +702,6 @@ ] }, { - "name" : "027", "data" : [ [ "Perl 5", @@ -501,7 +716,8 @@ 9 ] ], - "id" : "027" + "id" : "027", + "name" : "027" }, { "id" : "028", @@ -522,8 +738,8 @@ "name" : "028" }, { - "id" : "029", "name" : "029", + "id" : "029", "data" : [ [ "Perl 5", @@ -540,7 +756,7 @@ ] }, { - "id" : "030", + "name" : "030", "data" : [ [ "Perl 5", @@ -555,9 +771,10 @@ 10 ] ], - "name" : "030" + "id" : "030" }, { + "name" : "031", "data" : [ [ "Perl 5", @@ -572,7 +789,6 @@ 9 ] ], - "name" : "031", "id" : "031" }, { @@ -595,6 +811,7 @@ }, { "name" : "033", + "id" : "033", "data" : [ [ "Perl 5", @@ -608,8 +825,7 @@ "Blog", 10 ] - ], - "id" : "033" + ] }, { "id" : "034", @@ -644,8 +860,8 @@ 9 ] ], - "name" : "035", - "id" : "035" + "id" : "035", + "name" : "035" }, { "name" : "036", @@ -666,8 +882,6 @@ "id" : "036" }, { - "id" : "037", - "name" : "037", "data" : [ [ "Perl 5", @@ -681,9 +895,12 @@ "Blog", 7 ] - ] + ], + "id" : "037", + "name" : "037" }, { + "name" : "038", "id" : "038", "data" : [ [ @@ -692,231 +909,14 @@ ], [ "Perl 6", - 16 + 18 ], [ "Blog", 4 ] - ], - "name" : "038" + ] } ] - }, - "legend" : { - "enabled" : "false" - }, - "series" : [ - { - "colorByPoint" : "true", - "name" : "Perl Weekly Challenge Languages", - "data" : [ - { - "y" : 136, - "name" : "#001", - "drilldown" : "001" - }, - { - "drilldown" : "002", - "name" : "#002", - "y" : 104 - }, - { - "y" : 67, - "drilldown" : "003", - "name" : "#003" - }, - { - "drilldown" : "004", - "name" : "#004", - "y" : 87 - }, - { - "y" : 67, - "drilldown" : "005", - "name" : "#005" - }, - { - "y" : 48, - "name" : "#006", - "drilldown" : "006" - }, - { - "y" : 56, - "drilldown" : "007", - "name" : "#007" - }, - { - "name" : "#008", - "drilldown" : "008", - "y" : 70 - }, - { - "y" : 68, - "drilldown" : "009", - "name" : "#009" - }, - { - "y" : 60, - "drilldown" : "010", - "name" : "#010" - }, - { - "drilldown" : "011", - "name" : "#011", - "y" : 79 - }, - { - "y" : 83, - "name" : "#012", - "drilldown" : "012" - }, - { - "drilldown" : "013", - "name" : "#013", - "y" : 76 - }, - { - "name" : "#014", - "drilldown" : "014", - "y" : 96 - }, - { - "y" : 93, - "drilldown" : "015", - "name" : "#015" - }, - { - "y" : 66, - "name" : "#016", - "drilldown" : "016" - }, - { - "y" : 79, - "name" : "#017", - "drilldown" : "017" - }, - { - "y" : 76, - "name" : "#018", - "drilldown" : "018" - }, - { - "drilldown" : "019", - "name" : "#019", - "y" : 95 - }, - { - "y" : 95, - "drilldown" : "020", - "name" : "#020" - }, - { - "name" : "#021", - "drilldown" : "021", - "y" : 67 - }, - { - "y" : 63, - "drilldown" : "022", - "name" : "#022" - }, - { - "name" : "#023", - "drilldown" : "023", - "y" : 91 - }, - { - "drilldown" : "024", - "name" : "#024", - "y" : 70 - }, - { - "y" : 55, - "drilldown" : "025", - "name" : "#025" - }, - { - "y" : 70, - "name" : "#026", - "drilldown" : "026" - }, - { - "y" : 58, - "name" : "#027", - "drilldown" : "027" - }, - { - "drilldown" : "028", - "name" : "#028", - "y" : 78 - }, - { - "name" : "#029", - "drilldown" : "029", - "y" : 77 - }, - { - "y" : 115, - "drilldown" : "030", - "name" : "#030" - }, - { - "drilldown" : "031", - "name" : "#031", - "y" : 87 - }, - { - "drilldown" : "032", - "name" : "#032", - "y" : 92 - }, - { - "y" : 108, - "drilldown" : "033", - "name" : "#033" - }, - { - "drilldown" : "034", - "name" : "#034", - "y" : 60 - }, - { - "y" : 60, - "drilldown" : "035", - "name" : "#035" - }, - { - "name" : "#036", - "drilldown" : "036", - "y" : 61 - }, - { - "y" : 61, - "name" : "#037", - "drilldown" : "037" - }, - { - "y" : 41, - "drilldown" : "038", - "name" : "#038" - } - ] - } - ], - "xAxis" : { - "type" : "category" - }, - "plotOptions" : { - "series" : { - "dataLabels" : { - "enabled" : 1, - "format" : "{point.y}" - }, - "borderWidth" : 0 - } - }, - "subtitle" : { - "text" : "Click the columns to drilldown the language breakdown. Last updated at 2019-12-15 03:44:13 GMT" } } diff --git a/stats/pwc-leaders.json b/stats/pwc-leaders.json index 93f86f4f10..ea16cb6229 100644 --- a/stats/pwc-leaders.json +++ b/stats/pwc-leaders.json @@ -1,331 +1,45 @@ { - "plotOptions" : { - "series" : { - "borderWidth" : 0, - "dataLabels" : { - "format" : "{point.y}", - "enabled" : 1 - } - } - }, - "tooltip" : { - "followPointer" : "true", - "headerFormat" : "", - "pointFormat" : "{point.name}: {point.y:f}
" - }, - "title" : { - "text" : "Perl Weekly Challenge Leaders (TOP 50)" - }, - "xAxis" : { - "type" : "category" - }, - "yAxis" : { - "title" : { - "text" : "Total Score" - } - }, - "series" : [ - { - "name" : "Perl Weekly Challenge Leaders", - "data" : [ - { - "name" : "#1: Laurent Rosenfeld", - "drilldown" : "Laurent Rosenfeld", - "y" : 466 - }, - { - "drilldown" : "Joelle Maslak", - "name" : "#2: Joelle Maslak", - "y" : 330 - }, - { - "name" : "#3: Jaldhar H. Vyas", - "drilldown" : "Jaldhar H. Vyas", - "y" : 326 - }, - { - "name" : "#4: Ruben Westerberg", - "drilldown" : "Ruben Westerberg", - "y" : 300 - }, - { - "name" : "#5: Adam Russell", - "drilldown" : "Adam Russell", - "y" : 248 - }, - { - "drilldown" : "Arne Sommer", - "name" : "#6: Arne Sommer", - "y" : 234 - }, - { - "name" : "#7: Athanasius", - "drilldown" : "Athanasius", - "y" : 208 - }, - { - "y" : 202, - "drilldown" : "E. Choroba", - "name" : "#8: E. Choroba" - }, - { - "y" : 190, - "drilldown" : "Roger Bell West", - "name" : "#9: Roger Bell West" - }, - { - "name" : "#10: Kian-Meng Ang", - "drilldown" : "Kian-Meng Ang", - "y" : 156 - }, - { - "drilldown" : "Andrezgz", - "name" : "#11: Andrezgz", - "y" : 148 - }, - { - "y" : 148, - "name" : "#12: Simon Proctor", - "drilldown" : "Simon Proctor" - }, - { - "y" : 132, - "drilldown" : "Dave Jacoby", - "name" : "#13: Dave Jacoby" - }, - { - "y" : 130, - "name" : "#14: Duncan C. White", - "drilldown" : "Duncan C. White" - }, - { - "y" : 116, - "drilldown" : "Steven Wilson", - "name" : "#15: Steven Wilson" - }, - { - "y" : 114, - "drilldown" : "Yet Ebreo", - "name" : "#16: Yet Ebreo" - }, - { - "y" : 100, - "drilldown" : "Kevin Colyer", - "name" : "#17: Kevin Colyer" - }, - { - "y" : 96, - "name" : "#18: Duane Powell", - "drilldown" : "Duane Powell" - }, - { - "drilldown" : "Francis Whittle", - "name" : "#19: Francis Whittle", - "y" : 96 - }, - { - "y" : 88, - "name" : "#20: Feng Chang", - "drilldown" : "Feng Chang" - }, - { - "drilldown" : "Daniel Mantovani", - "name" : "#21: Daniel Mantovani", - "y" : 82 - }, - { - "name" : "#22: Javier Luque", - "drilldown" : "Javier Luque", - "y" : 80 - }, - { - "drilldown" : "Mark Senn", - "name" : "#23: Mark Senn", - "y" : 80 - }, - { - "y" : 78, - "name" : "#24: Noud", - "drilldown" : "Noud" - }, - { - "name" : "#25: Lubos Kolouch", - "drilldown" : "Lubos Kolouch", - "y" : 76 - }, - { - "y" : 72, - "name" : "#26: Gustavo Chaves", - "drilldown" : "Gustavo Chaves" - }, - { - "y" : 70, - "drilldown" : "Yozen Hernandez", - "name" : "#27: Yozen Hernandez" - }, - { - "name" : "#28: Guillermo Ramos", - "drilldown" : "Guillermo Ramos", - "y" : 64 - }, - { - "y" : 60, - "name" : "#29: Colin Crain", - "drilldown" : "Colin Crain" - }, - { - "drilldown" : "Jo Christian Oterhals", - "name" : "#30: Jo Christian Oterhals", - "y" : 56 - }, - { - "y" : 56, - "name" : "#31: Ozzy", - "drilldown" : "Ozzy" - }, - { - "y" : 52, - "drilldown" : "Dr James A. Smith", - "name" : "#32: Dr James A. Smith" - }, - { - "y" : 52, - "drilldown" : "Randy Lauen", - "name" : "#33: Randy Lauen" - }, - { - "y" : 50, - "drilldown" : "Burkhard Nickels", - "name" : "#34: Burkhard Nickels" - }, - { - "y" : 46, - "name" : "#35: Dave Cross", - "drilldown" : "Dave Cross" - }, - { - "name" : "#36: Ulrich Rieke", - "drilldown" : "Ulrich Rieke", - "y" : 44 - }, - { - "name" : "#37: Veesh Goldman", - "drilldown" : "Veesh Goldman", - "y" : 44 - }, - { - "y" : 42, - "name" : "#38: Daniel Mita", - "drilldown" : "Daniel Mita" - }, - { - "drilldown" : "Lars Balker", - "name" : "#39: Lars Balker", - "y" : 38 - }, - { - "y" : 36, - "drilldown" : "Markus Holzer", - "name" : "#40: Markus Holzer" - }, - { - "drilldown" : "Mark Anderson", - "name" : "#41: Mark Anderson", - "y" : 32 - }, - { - "drilldown" : "Nick Logan", - "name" : "#42: Nick Logan", - "y" : 32 - }, - { - "y" : 30, - "drilldown" : "Ryan Thompson", - "name" : "#43: Ryan Thompson" - }, - { - "y" : 28, - "name" : "#44: Pete Houston", - "drilldown" : "Pete Houston" - }, - { - "y" : 24, - "drilldown" : "Jaime Corchado", - "name" : "#45: Jaime Corchado" - }, - { - "y" : 24, - "drilldown" : "Kivanc Yazan", - "name" : "#46: Kivanc Yazan" - }, - { - "drilldown" : "Lars Thegler", - "name" : "#47: Lars Thegler", - "y" : 24 - }, - { - "drilldown" : "Maxim Nechaev", - "name" : "#48: Maxim Nechaev", - "y" : 24 - }, - { - "y" : 22, - "name" : "#49: Alicia Bielsa", - "drilldown" : "Alicia Bielsa" - }, - { - "name" : "#50: Prajith P", - "drilldown" : "Prajith P", - "y" : 22 - } - ], - "colorByPoint" : "true" - } - ], "drilldown" : { "series" : [ { - "name" : "Laurent Rosenfeld", "data" : [ - [ - "Perl 6", - 73 - ], [ "Blog", 87 ], + [ + "Perl 6", + 73 + ], [ "Perl 5", 73 ] ], + "name" : "Laurent Rosenfeld", "id" : "Laurent Rosenfeld" }, { + "id" : "Joelle Maslak", "name" : "Joelle Maslak", "data" : [ [ - "Perl 5", - 80 + "Blog", + 5 ], [ "Perl 6", 80 ], [ - "Blog", - 5 + "Perl 5", + 80 ] - ], - "id" : "Joelle Maslak" + ] }, { + "id" : "Jaldhar H. Vyas", "data" : [ - [ - "Perl 5", - 71 - ], [ "Blog", 22 @@ -333,12 +47,16 @@ [ "Perl 6", 70 + ], + [ + "Perl 5", + 71 ] ], - "name" : "Jaldhar H. Vyas", - "id" : "Jaldhar H. Vyas" + "name" : "Jaldhar H. Vyas" }, { + "id" : "Ruben Westerberg", "data" : [ [ "Perl 6", @@ -349,29 +67,28 @@ 75 ] ], - "name" : "Ruben Westerberg", - "id" : "Ruben Westerberg" + "name" : "Ruben Westerberg" }, { "id" : "Adam Russell", - "name" : "Adam Russell", "data" : [ [ "Perl 6", 9 ], - [ - "Blog", - 40 - ], [ "Perl 5", 75 + ], + [ + "Blog", + 40 ] - ] + ], + "name" : "Adam Russell" }, { - "id" : "Arne Sommer", + "name" : "Arne Sommer", "data" : [ [ "Perl 5", @@ -386,16 +103,11 @@ 38 ] ], - "name" : "Arne Sommer" + "id" : "Arne Sommer" }, { "id" : "Athanasius", - "name" : "Athanasius", "data" : [ - [ - "Perl 5", - 63 - ], [ "Blog", 3 @@ -403,10 +115,16 @@ [ "Perl 6", 38 + ], + [ + "Perl 5", + 63 ] - ] + ], + "name" : "Athanasius" }, { + "id" : "E. Choroba", "data" : [ [ "Perl 5", @@ -417,16 +135,10 @@ 33 ] ], - "name" : "E. Choroba", - "id" : "E. Choroba" + "name" : "E. Choroba" }, { - "name" : "Roger Bell West", "data" : [ - [ - "Blog", - 20 - ], [ "Perl 6", 27 @@ -434,13 +146,17 @@ [ "Perl 5", 48 + ], + [ + "Blog", + 20 ] ], + "name" : "Roger Bell West", "id" : "Roger Bell West" }, { "id" : "Kian-Meng Ang", - "name" : "Kian-Meng Ang", "data" : [ [ "Perl 5", @@ -450,17 +166,18 @@ "Blog", 40 ] - ] + ], + "name" : "Kian-Meng Ang" }, { + "id" : "Andrezgz", "name" : "Andrezgz", "data" : [ [ "Perl 5", 74 ] - ], - "id" : "Andrezgz" + ] }, { "id" : "Simon Proctor", @@ -470,33 +187,33 @@ "Perl 5", 5 ], - [ - "Blog", - 7 - ], [ "Perl 6", 62 + ], + [ + "Blog", + 7 ] ] }, { - "name" : "Dave Jacoby", + "id" : "Dave Jacoby", "data" : [ [ - "Blog", - 23 + "Perl 5", + 42 ], [ "Perl 6", 1 ], [ - "Perl 5", - 42 + "Blog", + 23 ] ], - "id" : "Dave Jacoby" + "name" : "Dave Jacoby" }, { "id" : "Duncan C. White", @@ -520,40 +237,37 @@ "Perl 5", 54 ], - [ - "Blog", - 3 - ], [ "Perl 6", 1 + ], + [ + "Blog", + 3 ] ] }, { - "id" : "Yet Ebreo", "data" : [ [ "Perl 5", 30 ], - [ - "Blog", - 6 - ], [ "Perl 6", 21 + ], + [ + "Blog", + 6 ] ], - "name" : "Yet Ebreo" + "name" : "Yet Ebreo", + "id" : "Yet Ebreo" }, { + "id" : "Kevin Colyer", "data" : [ - [ - "Perl 6", - 47 - ], [ "Blog", 1 @@ -561,20 +275,23 @@ [ "Perl 5", 2 + ], + [ + "Perl 6", + 49 ] ], - "name" : "Kevin Colyer", - "id" : "Kevin Colyer" + "name" : "Kevin Colyer" }, { + "id" : "Duane Powell", "name" : "Duane Powell", "data" : [ [ "Perl 5", 48 ] - ], - "id" : "Duane Powell" + ] }, { "id" : "Francis Whittle", @@ -592,38 +309,38 @@ }, { "id" : "Feng Chang", - "name" : "Feng Chang", "data" : [ - [ - "Perl 6", - 23 - ], [ "Perl 5", 21 + ], + [ + "Perl 6", + 23 ] - ] + ], + "name" : "Feng Chang" }, { - "id" : "Daniel Mantovani", - "name" : "Daniel Mantovani", "data" : [ [ "Perl 5", 41 ] - ] + ], + "name" : "Daniel Mantovani", + "id" : "Daniel Mantovani" }, { "data" : [ - [ - "Perl 5", - 16 - ], [ "Blog", 8 ], + [ + "Perl 5", + 16 + ], [ "Perl 6", 16 @@ -657,14 +374,14 @@ "id" : "Noud" }, { - "id" : "Lubos Kolouch", "data" : [ [ "Perl 5", 38 ] ], - "name" : "Lubos Kolouch" + "name" : "Lubos Kolouch", + "id" : "Lubos Kolouch" }, { "id" : "Gustavo Chaves", @@ -681,6 +398,7 @@ ] }, { + "id" : "Yozen Hernandez", "name" : "Yozen Hernandez", "data" : [ [ @@ -691,36 +409,31 @@ "Blog", 14 ] - ], - "id" : "Yozen Hernandez" + ] }, { - "id" : "Guillermo Ramos", - "name" : "Guillermo Ramos", "data" : [ [ "Perl 5", 32 ] - ] + ], + "name" : "Guillermo Ramos", + "id" : "Guillermo Ramos" }, { - "name" : "Colin Crain", + "id" : "Colin Crain", "data" : [ [ "Perl 5", 30 ] ], - "id" : "Colin Crain" + "name" : "Colin Crain" }, { - "id" : "Jo Christian Oterhals", + "name" : "Jo Christian Oterhals", "data" : [ - [ - "Perl 6", - 15 - ], [ "Blog", 7 @@ -728,36 +441,41 @@ [ "Perl 5", 6 + ], + [ + "Perl 6", + 15 ] ], - "name" : "Jo Christian Oterhals" + "id" : "Jo Christian Oterhals" }, { + "name" : "Ozzy", "data" : [ [ "Perl 6", 28 ] ], - "name" : "Ozzy", "id" : "Ozzy" }, { + "name" : "Dr James A. Smith", "data" : [ - [ - "Perl 5", - 16 - ], [ "Perl 6", 10 + ], + [ + "Perl 5", + 16 ] ], - "name" : "Dr James A. Smith", "id" : "Dr James A. Smith" }, { "id" : "Randy Lauen", + "name" : "Randy Lauen", "data" : [ [ "Perl 6", @@ -767,25 +485,24 @@ "Perl 5", 9 ] - ], - "name" : "Randy Lauen" + ] }, { "id" : "Burkhard Nickels", + "name" : "Burkhard Nickels", "data" : [ - [ - "Blog", - 9 - ], [ "Perl 5", 16 + ], + [ + "Blog", + 9 ] - ], - "name" : "Burkhard Nickels" + ] }, { - "id" : "Dave Cross", + "name" : "Dave Cross", "data" : [ [ "Blog", @@ -796,43 +513,41 @@ 21 ] ], - "name" : "Dave Cross" + "id" : "Dave Cross" }, { - "id" : "Ulrich Rieke", + "name" : "Ulrich Rieke", "data" : [ - [ - "Perl 6", - 14 - ], [ "Perl 5", 8 + ], + [ + "Perl 6", + 14 ] ], - "name" : "Ulrich Rieke" + "id" : "Ulrich Rieke" }, { "data" : [ [ - "Blog", - 3 + "Perl 5", + 17 ], [ "Perl 6", 2 ], [ - "Perl 5", - 17 + "Blog", + 3 ] ], "name" : "Veesh Goldman", "id" : "Veesh Goldman" }, { - "id" : "Daniel Mita", - "name" : "Daniel Mita", "data" : [ [ "Perl 5", @@ -842,11 +557,12 @@ "Perl 6", 18 ] - ] + ], + "name" : "Daniel Mita", + "id" : "Daniel Mita" }, { "id" : "Lars Balker", - "name" : "Lars Balker", "data" : [ [ "Perl 5", @@ -856,10 +572,10 @@ "Perl 6", 4 ] - ] + ], + "name" : "Lars Balker" }, { - "id" : "Markus Holzer", "name" : "Markus Holzer", "data" : [ [ @@ -870,37 +586,39 @@ "Perl 5", 2 ] - ] + ], + "id" : "Markus Holzer" }, { - "id" : "Mark Anderson", "name" : "Mark Anderson", "data" : [ - [ - "Perl 5", - 14 - ], [ "Perl 6", 2 + ], + [ + "Perl 5", + 14 ] - ] + ], + "id" : "Mark Anderson" }, { + "name" : "Nick Logan", "data" : [ [ - "Perl 6", + "Perl 5", 8 ], [ - "Perl 5", + "Perl 6", 8 ] ], - "name" : "Nick Logan", "id" : "Nick Logan" }, { + "id" : "Ryan Thompson", "data" : [ [ "Perl 5", @@ -911,28 +629,27 @@ 5 ] ], - "name" : "Ryan Thompson", - "id" : "Ryan Thompson" + "name" : "Ryan Thompson" }, { + "name" : "Pete Houston", "data" : [ [ "Perl 5", 14 ] ], - "name" : "Pete Houston", "id" : "Pete Ho