aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMohammad S Anwar <mohammad.anwar@yahoo.com>2019-11-19 14:31:18 +0000
committerMohammad S Anwar <mohammad.anwar@yahoo.com>2019-11-19 14:31:18 +0000
commita672e0d747ab37b4b54521c192e68b445b1c73ef (patch)
tree8a623e4f0bad2516a27e59d41cef6667f3c8366f
parente3e4db36399c4389908df819e45e242c4dbcc492 (diff)
downloadperlweeklychallenge-club-a672e0d747ab37b4b54521c192e68b445b1c73ef.tar.gz
perlweeklychallenge-club-a672e0d747ab37b4b54521c192e68b445b1c73ef.tar.bz2
perlweeklychallenge-club-a672e0d747ab37b4b54521c192e68b445b1c73ef.zip
- Added solutions by Javier Luque.
-rw-r--r--challenge-035/javier-luque/blog.txt1
-rw-r--r--challenge-035/javier-luque/perl5/ch-1.pl70
-rw-r--r--challenge-035/javier-luque/perl5/ch-2.pl119
-rw-r--r--challenge-035/javier-luque/perl6/ch-1.p663
-rw-r--r--challenge-035/javier-luque/perl6/ch-2.p661
-rw-r--r--stats/pwc-current.json105
-rw-r--r--stats/pwc-language-breakdown-summary.json76
-rw-r--r--stats/pwc-language-breakdown.json274
-rw-r--r--stats/pwc-leaders.json594
-rw-r--r--stats/pwc-summary-1-30.json112
-rw-r--r--stats/pwc-summary-121-150.json68
-rw-r--r--stats/pwc-summary-31-60.json40
-rw-r--r--stats/pwc-summary-61-90.json36
-rw-r--r--stats/pwc-summary-91-120.json28
-rw-r--r--stats/pwc-summary.json42
15 files changed, 1013 insertions, 676 deletions
diff --git a/challenge-035/javier-luque/blog.txt b/challenge-035/javier-luque/blog.txt
new file mode 100644
index 0000000000..11f4704553
--- /dev/null
+++ b/challenge-035/javier-luque/blog.txt
@@ -0,0 +1 @@
+https://perlchallenges.wordpress.com/2019/11/18/perl-weekly-challenge-035/
diff --git a/challenge-035/javier-luque/perl5/ch-1.pl b/challenge-035/javier-luque/perl5/ch-1.pl
new file mode 100644
index 0000000000..0783e844de
--- /dev/null
+++ b/challenge-035/javier-luque/perl5/ch-1.pl
@@ -0,0 +1,70 @@
+#!/usr/bin/perl
+# Test: ./ch1.pl 'string to test'
+use strict;
+use warnings;
+use feature qw /say/;
+
+say encode(join ' ', @ARGV);
+
+sub encode {
+ my $test_string = shift;
+ my $converted_string = '';
+
+ # Some definitions
+ my $dot = '1';
+ my $dash = '1' x 3;
+ my $gap = '0';
+ my $char_gap = '0' x 3;
+ my $word_gap = '0' x 7;
+
+ # For my sanity I just copied and paste real morse code
+ # This could be cleaner
+ my %morse = qw(
+ A .- B -... C -.-. D -.. E . F ..-.
+ G --. H .... I .. J .--- K -.- L .-..
+ M -- N -. O --- P .--. Q --.- R .-.
+ S ... T - U ..- V ...- W .--
+ X -..- Y -.-- Z --..
+ 0 ----- 1 .---- 2 ..--- 3 ...-- 4 ....-
+ 5 ..... 6 -.... 7 --... 8 ---.. 9 ----.
+ . .-.-.- / -...- : ---... ' .----.
+ - -....- ? ..--.. ! ..--. @ ...-.- + .-.-.
+ );
+
+ # Stop perl from spitting out a warning
+ # about a comma in qw
+ $morse{','} = '--..--';
+
+ # Convert the dot and dashes to the required 0 and 1's
+ for my $key (sort keys %morse) {
+ my $code = $morse{$key};
+ $code =~ s/\.$/$dot/; # trailing $dot
+ $code =~ s/\-$/$dash/; # trailing $dash
+ $code =~ s/\./$dot$gap/g; # all other dots
+ $code =~ s/\-/$dash$gap/g; # all other dashes
+ $morse{$key} = $code;
+ }
+
+ # Split words
+ my @words = split('\s+', $test_string);
+ for my $i (0 .. $#words) {
+
+ # Split characters
+ my @chars = split('', $words[$i]);
+ for my $j (0 .. $#chars) {
+ # Translate the character
+ $converted_string .= $morse{uc($chars[$j])};
+
+ # Add the character gap
+ $converted_string .= $char_gap
+ unless ($j == $#chars);
+ }
+
+ # Add the word gap
+ $converted_string .= $word_gap
+ unless ($i == $#words);
+ }
+
+ return $converted_string;
+}
+
diff --git a/challenge-035/javier-luque/perl5/ch-2.pl b/challenge-035/javier-luque/perl5/ch-2.pl
new file mode 100644
index 0000000000..2e218f956c
--- /dev/null
+++ b/challenge-035/javier-luque/perl5/ch-2.pl
@@ -0,0 +1,119 @@
+#!/usr/bin/perl
+# Test: ./ch1.pl 'string to test' | ./ch2.pl
+use strict;
+use warnings;
+use feature qw /say/;
+
+say decode(<STDIN>);
+
+sub decode {
+ my $encoded_string = shift;
+ my $converted_string = '';
+ chomp $encoded_string;
+
+ # Do some error correction
+ if (scalar(@ARGV)) {
+ $encoded_string =
+ simulate_error($encoded_string, $ARGV[0]);
+ $encoded_string =
+ error_correction($encoded_string);
+ }
+
+ # Some definitions
+ my $char_gap = '0' x 3;
+ my $word_gap = '0' x 7;
+
+ # I generated this lookup table using a modified perl5 script
+ my %morse = (
+ '1010111011101' => '!', '1011101110111011101' => "'",
+ '1011101011101' => '+', '1110111010101110111' => ',',
+ '111010101010111' => '-', '10111010111010111' => '.',
+ '1110101010111' => '/', '1110111011101110111' => '0',
+ '10111011101110111' => '1', '101011101110111' => '2',
+ '1010101110111' => '3', '10101010111' => '4',
+ '101010101' => '5', '11101010101' => '6',
+ '1110111010101' => '7', '111011101110101' => '8',
+ '11101110111011101' => '9', '11101110111010101' => ':',
+ '101011101110101' => '?', '101010111010111' => '@',
+ '10111' => 'A', '111010101' => 'B',
+ '11101011101' => 'C', '1110101' => 'D',
+ '1' => 'E', '101011101' => 'F',
+ '111011101' => 'G', '1010101' => 'H',
+ '101' => 'I', '1011101110111' => 'J',
+ '111010111' => 'K', '101110101' => 'L',
+ '1110111' => 'M', '11101' => 'N',
+ '11101110111' => 'O', '10111011101' => 'P',
+ '1110111010111' => 'Q', '1011101' => 'R',
+ '10101' => 'S', '111' => 'T',
+ '1010111' => 'U', '101010111' => 'V',
+ '101110111' => 'W', '11101010111' => 'X',
+ '1110101110111' => 'Y', '11101110101' => 'Z',
+ );
+
+ # Split words
+ my @words = split($word_gap, $encoded_string);
+ for my $i (0 .. $#words) {
+
+ # Split characters
+ my @chars = split($char_gap, $words[$i]);
+ for my $j (0 .. $#chars) {
+ # Translate the character
+ $converted_string .= $morse{$chars[$j]}
+ if (defined($morse{$chars[$j]}));
+ }
+
+ # Add the word gap
+ $converted_string .= ' '
+ unless ($i == $#words);
+ }
+
+ return $converted_string;
+}
+
+sub simulate_error {
+ my $mutated_string = shift;
+ my $mutations = shift;
+
+ for my $i (0..$mutations) {
+ my @zero_locations = ();
+
+ # locate all the 0's
+ my @chars = split ('', $mutated_string);
+ for my $i (0 .. $#chars) {
+ push @zero_locations, $i
+ if ($chars[$i] == 0);
+ }
+
+ # remove a random 0;
+ my $random_position = int(rand($#zero_locations));
+ substr $mutated_string,
+ $zero_locations[$random_position], 1, '';
+ }
+
+ return $mutated_string;
+}
+
+
+sub error_correction {
+ my $corrected_string = shift;
+
+ # missed char sep between two shorts
+ $corrected_string =~ s/^110/^1010/g;
+
+ # missed char sep between two longs
+ $corrected_string =~ s/111111/1110111/g;
+
+ # missed char sep between two shorts
+ $corrected_string =~ s/0110/01010/g;
+
+ # missed word separator
+ $corrected_string =~ s/10{4,6}1/100000001/g;
+
+ # missed char separator
+ $corrected_string =~ s/1001/10001/g;
+
+ # missed on short and long
+ $corrected_string =~ s/1111/10111/g;
+
+ return $corrected_string;
+}
diff --git a/challenge-035/javier-luque/perl6/ch-1.p6 b/challenge-035/javier-luque/perl6/ch-1.p6
new file mode 100644
index 0000000000..69bfd5e655
--- /dev/null
+++ b/challenge-035/javier-luque/perl6/ch-1.p6
@@ -0,0 +1,63 @@
+# Test: perl6 ch2.p6 'string to test'
+use v6.d;
+
+sub MAIN (Str $message) {
+ say encode($message);
+}
+
+sub encode (Str $message) {
+ my $encoded_message = '';
+
+ # Some definitions
+ my $char_gap = '0' x 3;
+ my $word_gap = '0' x 7;
+
+ # I generated this lookup table using a modified perl5 script
+ my %morse = (
+ '!' => '1010111011101', "'" => '1011101110111011101',
+ '+' => '1011101011101', ',' => '1110111010101110111',
+ '-' => '111010101010111', '.' => '10111010111010111',
+ '/' => '1110101010111', '0' => '1110111011101110111',
+ '1' => '10111011101110111', '2' => '101011101110111',
+ '3' => '1010101110111', '4' => '10101010111',
+ '5' => '101010101', '6' => '11101010101',
+ '7' => '1110111010101', '8' => '111011101110101',
+ '9' => '11101110111011101', ':' => '11101110111010101',
+ '?' => '101011101110101', '@' => '101010111010111',
+ 'A' => '10111', 'B' => '111010101',
+ 'C' => '11101011101', 'D' => '1110101',
+ 'E' => '1', 'F' => '101011101',
+ 'G' => '111011101', 'H' => '1010101',
+ 'I' => '101', 'J' => '1011101110111',
+ 'K' => '111010111', 'L' => '101110101',
+ 'M' => '1110111', 'N' => '11101',
+ 'O' => '11101110111', 'P' => '10111011101',
+ 'Q' => '1110111010111', 'R' => '1011101',
+ 'S' => '10101', 'T' => '111',
+ 'U' => '1010111', 'V' => '101010111',
+ 'W' => '101110111', 'X' => '11101010111',
+ 'Y' => '1110101110111', 'Z' => '11101110101',
+ );
+
+ # Split words
+ my @words = $message.split(rx{\s+});
+ for (0 .. @words.end) -> $i {
+ # Split characters
+ my @chars = @words[$i].comb;
+
+ for (0 .. @chars.end) -> $j {
+ # Translate the character
+ $encoded_message ~= %morse{@chars[$j].uc};
+
+ # Add the character gap
+ $encoded_message ~= $char_gap
+ unless ($j == @chars.end);
+ }
+
+ # Add the word gap
+ $encoded_message ~= $word_gap
+ unless ($i == (@words.end));
+ }
+
+ return $encoded_message;
+}
diff --git a/challenge-035/javier-luque/perl6/ch-2.p6 b/challenge-035/javier-luque/perl6/ch-2.p6
new file mode 100644
index 0000000000..b4b4e426a5
--- /dev/null
+++ b/challenge-035/javier-luque/perl6/ch-2.p6
@@ -0,0 +1,61 @@
+# Test: perl6 ch1.p6 'string to test' | perl6 ch2.p6
+use v6.d;
+
+sub MAIN () {
+ for $*IN.lines() -> $line {
+ say decode($line);
+ }
+}
+
+sub decode (Str $message) {
+ my $decoded_message = '';
+
+ # Some definitions
+ my $char_gap = '0' x 3;
+ my $word_gap = '0' x 7;
+
+ # I generated this lookup table using a modified perl5 script
+ my %morse = (
+ '1010111011101' => '!', '1011101110111011101' => "'",
+ '1011101011101' => '+', '1110111010101110111' => ',',
+ '111010101010111' => '-', '10111010111010111' => '.',
+ '1110101010111' => '/', '1110111011101110111' => '0',
+ '10111011101110111' => '1', '101011101110111' => '2',
+ '1010101110111' => '3', '10101010111' => '4',
+ '101010101' => '5', '11101010101' => '6',
+ '1110111010101' => '7', '111011101110101' => '8',
+ '11101110111011101' => '9', '11101110111010101' => ':',
+ '101011101110101' => '?', '101010111010111' => '@',
+ '10111' => 'A', '111010101' => 'B',
+ '11101011101' => 'C', '1110101' => 'D',
+ '1' => 'E', '101011101' => 'F',
+ '111011101' => 'G', '1010101' => 'H',
+ '101' => 'I', '1011101110111' => 'J',
+ '111010111' => 'K', '101110101' => 'L',
+ '1110111' => 'M', '11101' => 'N',
+ '11101110111' => 'O', '10111011101' => 'P',
+ '1110111010111' => 'Q', '1011101' => 'R',
+ '10101' => 'S', '111' => 'T',
+ '1010111' => 'U', '101010111' => 'V',
+ '101110111' => 'W', '11101010111' => 'X',
+ '1110101110111' => 'Y', '11101110101' => 'Z',
+ );
+
+ # Split words
+ my @words = $message.split($word_gap);
+ for (0 .. @words - 1) -> $i {
+ # Split characters
+ my @chars = @words[$i].split($char_gap);
+
+ for (0 .. @chars - 1) -> $j {
+ # Translate the character
+ $decoded_message ~= %morse{@chars[$j]};
+ }
+
+ # Add the word gap
+ $decoded_message ~= ' '
+ unless ($i == (@words - 1));
+ }
+
+ return $decoded_message;
+}
diff --git a/stats/pwc-current.json b/stats/pwc-current.json
index bc716c9ba4..6336653c6c 100644
--- a/stats/pwc-current.json
+++ b/stats/pwc-current.json
@@ -1,56 +1,48 @@
{
- "plotOptions" : {
- "series" : {
- "borderWidth" : 0,
- "dataLabels" : {
- "format" : "{point.y}",
- "enabled" : 1
- }
- }
+ "tooltip" : {
+ "headerFormat" : "<span style='font-size:11px'>{series.name}</span><br/>",
+ "pointFormat" : "<span style='color:{point.color}'>{point.name}</span>: <b>{point.y:f}</b><br/>",
+ "followPointer" : 1
+ },
+ "subtitle" : {
+ "text" : "[Champions: 3] Last updated at 2019-11-19 14:31:07 GMT"
},
"legend" : {
"enabled" : 0
},
- "yAxis" : {
- "title" : {
- "text" : "Total Solutions"
- }
- },
"title" : {
"text" : "Perl Weekly Challenge - 035"
},
- "series" : [
- {
- "data" : [
- {
- "y" : 4,
- "name" : "Roger Bell West",
- "drilldown" : "Roger Bell West"
- },
- {
- "y" : 2,
- "drilldown" : "Simon Proctor",
- "name" : "Simon Proctor"
- }
- ],
- "colorByPoint" : 1,
- "name" : "Perl Weekly Challenge - 035"
+ "plotOptions" : {
+ "series" : {
+ "dataLabels" : {
+ "enabled" : 1,
+ "format" : "{point.y}"
+ },
+ "borderWidth" : 0
}
- ],
- "xAxis" : {
- "type" : "category"
- },
- "tooltip" : {
- "followPointer" : 1,
- "headerFormat" : "<span style='font-size:11px'>{series.name}</span><br/>",
- "pointFormat" : "<span style='color:{point.color}'>{point.name}</span>: <b>{point.y:f}</b><br/>"
- },
- "subtitle" : {
- "text" : "[Champions: 2] Last updated at 2019-11-19 14:23:01 GMT"
},
"drilldown" : {
"series" : [
{
+ "name" : "Javier Luque",
+ "id" : "Javier Luque",
+ "data" : [
+ [
+ "Perl 5",
+ 2
+ ],
+ [
+ "Perl 6",
+ 2
+ ],
+ [
+ "Blog",
+ 1
+ ]
+ ]
+ },
+ {
"name" : "Roger Bell West",
"id" : "Roger Bell West",
"data" : [
@@ -65,8 +57,8 @@
]
},
{
- "id" : "Simon Proctor",
"name" : "Simon Proctor",
+ "id" : "Simon Proctor",
"data" : [
[
"Perl 6",
@@ -76,6 +68,37 @@
}
]
},
+ "xAxis" : {
+ "type" : "category"
+ },
+ "series" : [
+ {
+ "data" : [
+ {
+ "name" : "Javier Luque",
+ "drilldown" : "Javier Luque",
+ "y" : 5
+ },
+ {
+ "y" : 4,
+ "drilldown" : "Roger Bell West",
+ "name" : "Roger Bell West"
+ },
+ {
+ "y" : 2,
+ "drilldown" : "Simon Proctor",
+ "name" : "Simon Proctor"
+ }
+ ],
+ "colorByPoint" : 1,
+ "name" : "Perl Weekly Challenge - 035"
+ }
+ ],
+ "yAxis" : {
+ "title" : {
+ "text" : "Total Solutions"
+ }
+ },
"chart" : {
"type" : "column"
}
diff --git a/stats/pwc-language-breakdown-summary.json b/stats/pwc-language-breakdown-summary.json
index ce9595673e..323c2f5c1e 100644
--- a/stats/pwc-language-breakdown-summary.json
+++ b/stats/pwc-language-breakdown-summary.json
@@ -1,63 +1,63 @@
{
- "legend" : {
- "enabled" : "false"
- },
- "subtitle" : {
- "text" : "Last updated at 2019-11-19 14:23:13 GMT"
- },
- "title" : {
- "text" : "Perl Weekly Challenge Contributions - 2019"
- },
- "yAxis" : {
- "title" : {
- "text" : null
- },
- "min" : 0
- },
- "xAxis" : {
- "labels" : {
- "style" : {
- "fontFamily" : "Verdana, sans-serif",
- "fontSize" : "13px"
- }
- },
- "type" : "category"
- },
"series" : [
{
+ "name" : "Contributions",
"data" : [
[
"Blog",
- 373
+ 374
],
[
"Perl 5",
- 1453
+ 1455
],
[
"Perl 6",
- 864
+ 866
]
],
- "name" : "Contributions",
"dataLabels" : {
- "style" : {
- "fontSize" : "13px",
- "fontFamily" : "Verdana, sans-serif"
- },
- "color" : "#FFFFFF",
- "enabled" : "true",
"rotation" : -90,
"y" : 10,
+ "format" : "{point.y:.0f}",
"align" : "right",
- "format" : "{point.y:.0f}"
+ "color" : "#FFFFFF",
+ "enabled" : "true",
+ "style" : {
+ "fontSize" : "13px",
+ "fontFamily" : "Verdana, sans-serif"
+ }
}
}
],
- "chart" : {
- "type" : "column"
- },
"tooltip" : {
"pointFormat" : "<b>{point.y:.0f}</b>"
+ },
+ "legend" : {
+ "enabled" : "false"
+ },
+ "title" : {
+ "text" : "Perl Weekly Challenge Contributions - 2019"
+ },
+ "subtitle" : {
+ "text" : "Last updated at 2019-11-19 14:31:14 GMT"
+ },
+ "yAxis" : {
+ "title" : {
+ "text" : null
+ },
+ "min" : 0
+ },
+ "xAxis" : {
+ "type" : "category",
+ "labels" : {
+ "style" : {
+ "fontSize" : "13px",
+ "fontFamily" : "Verdana, sans-serif"
+ }
+ }
+ },
+ "chart" : {
+ "type" : "column"
}
}
diff --git a/stats/pwc-language-breakdown.json b/stats/pwc-language-breakdown.json
index 70a04607ae..ea07cf4c7b 100644
--- a/stats/pwc-language-breakdown.json
+++ b/stats/pwc-language-breakdown.json
@@ -1,27 +1,30 @@
{
- "subtitle" : {
- "text" : "Click the columns to drilldown the language breakdown. Last updated at 2019-11-19 14:23:13 GMT"
- },
"title" : {
"text" : "Perl Weekly Challenge Language"
},
+ "subtitle" : {
+ "text" : "Click the columns to drilldown the language breakdown. Last updated at 2019-11-19 14:31:14 GMT"
+ },
"legend" : {
"enabled" : "false"
},
+ "tooltip" : {
+ "pointFormat" : "<span style=\"color:{point.color}\">Challenge {point.name}</span>: <b>{point.y:f}</b><br/>",
+ "followPointer" : "true",
+ "headerFormat" : "<span style=\"font-size:11px\"></span>"
+ },
"series" : [
{
- "name" : "Perl Weekly Challenge Languages",
- "colorByPoint" : "true",
"data" : [
{
- "name" : "#001",
"y" : 132,
+ "name" : "#001",
"drilldown" : "001"
},
{
- "name" : "#002",
"y" : 104,
- "drilldown" : "002"
+ "drilldown" : "002",
+ "name" : "#002"
},
{
"name" : "#003",
@@ -29,14 +32,14 @@
"y" : 67
},
{
+ "drilldown" : "004",
"name" : "#004",
- "y" : 87,
- "drilldown" : "004"
+ "y" : 87
},
{
"drilldown" : "005",
- "y" : 66,
- "name" : "#005"
+ "name" : "#005",
+ "y" : 66
},
{
"y" : 48,
@@ -44,59 +47,59 @@
"name" : "#006"
},
{
- "name" : "#007",
+ "y" : 56,
"drilldown" : "007",
- "y" : 56
+ "name" : "#007"
},
{
+ "drilldown" : "008",
"name" : "#008",
- "y" : 70,
- "drilldown" : "008"
+ "y" : 70
},
{
- "y" : 68,
"drilldown" : "009",
- "name" : "#009"
+ "name" : "#009",
+ "y" : 68
},
{
- "name" : "#010",
"y" : 60,
+ "name" : "#010",
"drilldown" : "010"
},
{
- "name" : "#011",
"y" : 79,
- "drilldown" : "011"
+ "drilldown" : "011",
+ "name" : "#011"
},
{
+ "y" : 83,
"name" : "#012",
- "drilldown" : "012",
- "y" : 83
+ "drilldown" : "012"
},
{
+ "y" : 76,
"name" : "#013",
- "drilldown" : "013",
- "y" : 76
+ "drilldown" : "013"
},
{
"drilldown" : "014",
- "y" : 96,
- "name" : "#014"
+ "name" : "#014",
+ "y" : 96
},
{
- "name" : "#015",
"y" : 93,
+ "name" : "#015",
"drilldown" : "015"
},
{
- "name" : "#016",
+ "y" : 66,
"drilldown" : "016",
- "y" : 66
+ "name" : "#016"
},
{
+ "y" : 79,
"name" : "#017",
- "drilldown" : "017",
- "y" : 79
+ "drilldown" : "017"
},
{
"name" : "#018",
@@ -104,9 +107,9 @@
"y" : 76
},
{
- "name" : "#019",
"y" : 95,
- "drilldown" : "019"
+ "drilldown" : "019",
+ "name" : "#019"
},
{
"name" : "#020",
@@ -114,13 +117,13 @@
"y" : 95
},
{
+ "name" : "#021",
"drilldown" : "021",
- "y" : 67,
- "name" : "#021"
+ "y" : 67
},
{
- "name" : "#022",
"drilldown" : "022",
+ "name" : "#022",
"y" : 63
},
{
@@ -129,80 +132,87 @@
"y" : 91
},
{
- "y" : 70,
"drilldown" : "024",
- "name" : "#024"
+ "name" : "#024",
+ "y" : 70
},
{
+ "y" : 55,
"name" : "#025",
- "drilldown" : "025",
- "y" : 55
+ "drilldown" : "025"
},
{
+ "y" : 70,
"name" : "#026",
- "drilldown" : "026",
- "y" : 70
+ "drilldown" : "026"
},
{
"name" : "#027",
- "y" : 58,
- "drilldown" : "027"
+ "drilldown" : "027",
+ "y" : 58
},
{
+ "y" : 78,
"name" : "#028",
- "drilldown" : "028",
- "y" : 78
+ "drilldown" : "028"
},
{
- "name" : "#029",
+ "y" : 77,
"drilldown" : "029",
- "y" : 77
+ "name" : "#029"
},
{
+ "name" : "#030",
"drilldown" : "030",
- "y" : 115,
- "name" : "#030"
+ "y" : 115
},
{
"name" : "#031",
- "y" : 87,
- "drilldown" : "031"
+ "drilldown" : "031",
+ "y" : 87
},
{
"y" : 92,
- "drilldown" : "032",
- "name" : "#032"
+ "name" : "#032",
+ "drilldown" : "032"
},
{
- "name" : "#033",
"y" : 108,
+ "name" : "#033",
"drilldown" : "033"
},
{
- "name" : "#034",
"y" : 57,
- "drilldown" : "034"
+ "drilldown" : "034",
+ "name" : "#034"
},
{
"name" : "#035",
- "y" : 6,
- "drilldown" : "035"
+ "drilldown" : "035",
+ "y" : 11
}
- ]
+ ],
+ "name" : "Perl Weekly Challenge Languages",
+ "colorByPoint" : "true"
}
],
- "tooltip" : {
- "headerFormat" : "<span style=\"font-size:11px\"></span>",
- "pointFormat" : "<span style=\"color:{point.color}\">Challenge {point.name}</span>: <b>{point.y:f}</b><br/>",
- "followPointer" : "true"
+ "plotOptions" : {
+ "series" : {
+ "dataLabels" : {
+ "format" : "{point.y}",
+ "enabled" : 1
+ },
+ "borderWidth" : 0
+ }
},
- "chart" : {
- "type" : "column"
+ "yAxis" : {
+ "title" : {
+ "text" : "Total Solutions"
+ }
},
"drilldown" : {
"series" : [
{
- "name" : "001",
"data" : [
[
"Perl 5",
@@ -217,9 +227,11 @@
11
]
],
+ "name" : "001",
"id" : "001"
},
{
+ "id" : "002",
"name" : "002",
"data" : [
[
@@ -234,11 +246,10 @@
"Blog",
9
]
- ],
- "id" : "002"
+ ]
},
{
- "name" : "003",
+ "id" : "003",
"data" : [
[
"Perl 5",
@@ -253,10 +264,11 @@
9
]
],
- "id" : "003"
+ "name" : "003"
},
{
"id" : "004",
+ "name" : "004",
"data" : [
[
"Perl 5",
@@ -270,12 +282,10 @@
"Blog",
10
]
- ],
- "name" : "004"
+ ]
},
{
"name" : "005",
- "id" : "005",
"data" : [
[
"Perl 5",
@@ -289,10 +299,10 @@
"Blog",
11
]
- ]
+ ],
+ "id" : "005"
},
{
- "name" : "006",
"data" : [
[
"Perl 5",
@@ -307,10 +317,10 @@
7
]
],
+ "name" : "006",
"id" : "006"
},
{
- "name" : "007",
"data" : [
[
"Perl 5",
@@ -325,10 +335,11 @@
10
]
],
+ "name" : "007",
"id" : "007"
},
{
- "name" : "008",
+ "id" : "008",
"data" : [
[
"Perl 5",
@@ -343,7 +354,7 @@
12
]
],
- "id" : "008"
+ "name" : "008"
},
{
"data" : [
@@ -360,10 +371,11 @@
13
]
],
- "id" : "009",
- "name" : "009"
+ "name" : "009",
+ "id" : "009"
},
{
+ "id" : "010",
"name" : "010",
"data" : [
[
@@ -378,12 +390,11 @@
"Blog",
11
]
- ],
- "id" : "010"
+ ]
},
{
- "name" : "011",
"id" : "011",
+ "name" : "011",
"data" : [
[
"Perl 5",
@@ -400,7 +411,7 @@
]
},
{
- "id" : "012",
+ "name" : "012",
"data" : [
[
"Perl 5",
@@ -4