aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMyoungjin JEON <jeongoon@gmail.com>2020-09-04 00:58:41 +1000
committerMyoungjin JEON <jeongoon@gmail.com>2020-09-04 00:58:41 +1000
commitfe6712730b6613f853c875973f67ad4dde7b9aba (patch)
tree1d1fa8b0f6d9c7eecf5fab5647277b139befeb30
parente341257aebc02015342a242aacd7623e4cf3f67b (diff)
parentdb59d527f1d45cf7b47ff3571bdafe1cfa6d5c4f (diff)
downloadperlweeklychallenge-club-fe6712730b6613f853c875973f67ad4dde7b9aba.tar.gz
perlweeklychallenge-club-fe6712730b6613f853c875973f67ad4dde7b9aba.tar.bz2
perlweeklychallenge-club-fe6712730b6613f853c875973f67ad4dde7b9aba.zip
Merge remote-tracking branch 'upstream/master' into ch-076
-rwxr-xr-xchallenge-076/mohammad-anwar/perl/ch-2.pl6
-rw-r--r--challenge-076/mohammad-anwar/perl/grid-with-space.txt (renamed from challenge-076/mohammad-anwar/perl/search-grid.txt)0
-rw-r--r--challenge-076/mohammad-anwar/perl/grid-without-space.txt19
-rw-r--r--challenge-076/neil-bowers/blog.txt1
-rw-r--r--challenge-076/neil-bowers/perl/ch-2.pl53
-rw-r--r--challenge-076/neil-bowers/perl/pwc.txt19
-rw-r--r--challenge-076/roger-bell-west/blog.txt1
-rw-r--r--stats/pwc-current.json136
-rw-r--r--stats/pwc-language-breakdown-summary.json36
-rw-r--r--stats/pwc-language-breakdown.json530
-rw-r--r--stats/pwc-leaders.json776
-rw-r--r--stats/pwc-summary-1-30.json116
-rw-r--r--stats/pwc-summary-121-150.json40
-rw-r--r--stats/pwc-summary-151-180.json30
-rw-r--r--stats/pwc-summary-181-210.json56
-rw-r--r--stats/pwc-summary-31-60.json56
-rw-r--r--stats/pwc-summary-61-90.json90
-rw-r--r--stats/pwc-summary-91-120.json36
-rw-r--r--stats/pwc-summary.json410
19 files changed, 1272 insertions, 1139 deletions
diff --git a/challenge-076/mohammad-anwar/perl/ch-2.pl b/challenge-076/mohammad-anwar/perl/ch-2.pl
index 1133a7eddb..ef5ccfa344 100755
--- a/challenge-076/mohammad-anwar/perl/ch-2.pl
+++ b/challenge-076/mohammad-anwar/perl/ch-2.pl
@@ -144,13 +144,11 @@ sub horizontals {
my $matrix = {};
foreach my $line (@$data) {
chomp $line;
- $line =~ s/\s+/ /g;
+ $line =~ s/\s+//g;
my $l = "";
my @l = ();
- foreach my $char (split /\s/,$line) {
- $char =~ s/^\s+//g;
- $char =~ s/\s+$//g;
+ foreach my $char (split //,$line) {
push @l, $char;
$l .= $char;
}
diff --git a/challenge-076/mohammad-anwar/perl/search-grid.txt b/challenge-076/mohammad-anwar/perl/grid-with-space.txt
index 31cf2e0fd8..31cf2e0fd8 100644
--- a/challenge-076/mohammad-anwar/perl/search-grid.txt
+++ b/challenge-076/mohammad-anwar/perl/grid-with-space.txt
diff --git a/challenge-076/mohammad-anwar/perl/grid-without-space.txt b/challenge-076/mohammad-anwar/perl/grid-without-space.txt
new file mode 100644
index 0000000000..b010521de2
--- /dev/null
+++ b/challenge-076/mohammad-anwar/perl/grid-without-space.txt
@@ -0,0 +1,19 @@
+BIDEMIATSUCCORST
+LDEGGIWQHODEEHDP
+USEIRUBUTEASLAGU
+NGNIZILAICOSCNUD
+TGMIDSTSARAREIFG
+SRENMDCHASIVEELI
+SCSHAEUEBROADMTE
+HWOVLPEDDLAIULSS
+RYONLASFCSTAOGOT
+IGUSSRRUGOVARYOC
+NRGPATNANGILAMOO
+EIHACEIVIRUSESED
+SETSUDTTGARLICNH
+HVRMXLWIUMSNSOTB
+AEAOFILCHTODCAEU
+ZSCDFECAAIIRLNRF
+ARIIANYUTOOOUTPF
+RSECISNABOSCNERA
+DRSMPCUUNELTESIL
diff --git a/challenge-076/neil-bowers/blog.txt b/challenge-076/neil-bowers/blog.txt
new file mode 100644
index 0000000000..7efb982ec0
--- /dev/null
+++ b/challenge-076/neil-bowers/blog.txt
@@ -0,0 +1 @@
+http://neilb.org/2020/09/03/wordsearch.html
diff --git a/challenge-076/neil-bowers/perl/ch-2.pl b/challenge-076/neil-bowers/perl/ch-2.pl
new file mode 100644
index 0000000000..8f5d5338a6
--- /dev/null
+++ b/challenge-076/neil-bowers/perl/ch-2.pl
@@ -0,0 +1,53 @@
+#!/usr/local/bin/perl
+#
+# solve-wordsearch - search for words (from a word list) in a wordsearch grid
+#
+use strict;
+use warnings;
+use v5.20;
+use feature qw/ signatures /;
+no warnings qw/ experimental::signatures /;
+use File::Slurper qw/ read_lines /;
+
+die "usage: $0 <grid-file> <word-list>\n" unless @ARGV == 2;
+
+my @grid = map { [split('',lc($_))] } read_lines($ARGV[0]);
+my %is_a_word = map { lc($_) => 1 } read_lines($ARGV[1]);
+my $num_cols = int(@{ $grid[0] });
+my $num_rows = int(@grid);
+my %found;
+
+scan_grid_for_words();
+print_words();
+
+sub scan_grid_for_words {
+ for (my $row = 0; $row < $num_rows; ++$row) {
+ for (my $col = 0; $col < $num_cols; ++$col) {
+ foreach my $row_delta (-1, 0, 1) {
+ foreach my $col_delta (-1, 0, 1) {
+ next if $row_delta == 0 && $col_delta == 0;
+ scan_line_for_words($row, $col, $row_delta, $col_delta);
+ }
+ }
+ }
+ }
+}
+
+sub scan_line_for_words ($row, $col, $row_delta, $col_delta) {
+ my $word = "";
+
+ while (on_grid($row,$col)) {
+ $word .= $grid[$row][$col];
+ $found{$word}++ if $is_a_word{$word};
+ $row += $row_delta;
+ $col += $col_delta;
+ }
+}
+
+sub on_grid ($row, $col) {
+ return ($row < $num_rows && $row >= 0 && $col >= 0 && $col < $num_cols);
+}
+
+sub print_words {
+ print "$_\n" for sort keys %found;
+}
diff --git a/challenge-076/neil-bowers/perl/pwc.txt b/challenge-076/neil-bowers/perl/pwc.txt
new file mode 100644
index 0000000000..b010521de2
--- /dev/null
+++ b/challenge-076/neil-bowers/perl/pwc.txt
@@ -0,0 +1,19 @@
+BIDEMIATSUCCORST
+LDEGGIWQHODEEHDP
+USEIRUBUTEASLAGU
+NGNIZILAICOSCNUD
+TGMIDSTSARAREIFG
+SRENMDCHASIVEELI
+SCSHAEUEBROADMTE
+HWOVLPEDDLAIULSS
+RYONLASFCSTAOGOT
+IGUSSRRUGOVARYOC
+NRGPATNANGILAMOO
+EIHACEIVIRUSESED
+SETSUDTTGARLICNH
+HVRMXLWIUMSNSOTB
+AEAOFILCHTODCAEU
+ZSCDFECAAIIRLNRF
+ARIIANYUTOOOUTPF
+RSECISNABOSCNERA
+DRSMPCUUNELTESIL
diff --git a/challenge-076/roger-bell-west/blog.txt b/challenge-076/roger-bell-west/blog.txt
new file mode 100644
index 0000000000..da23bcd44b
--- /dev/null
+++ b/challenge-076/roger-bell-west/blog.txt
@@ -0,0 +1 @@
+https://blog.firedrake.org/archive/2020/09/Perl_Weekly_Challenge_76__prime_sum_and_word_search.html
diff --git a/stats/pwc-current.json b/stats/pwc-current.json
index feb4f74452..ea3cde34c8 100644
--- a/stats/pwc-current.json
+++ b/stats/pwc-current.json
@@ -1,4 +1,7 @@
{
+ "subtitle" : {
+ "text" : "[Champions: 12] Last updated at 2020-09-03 12:51:37 GMT"
+ },
"yAxis" : {
"title" : {
"text" : "Total Solutions"
@@ -6,37 +9,44 @@
},
"plotOptions" : {
"series" : {
- "borderWidth" : 0,
"dataLabels" : {
- "format" : "{point.y}",
- "enabled" : 1
- }
+ "enabled" : 1,
+ "format" : "{point.y}"
+ },
+ "borderWidth" : 0
}
},
"chart" : {
"type" : "column"
},
- "subtitle" : {
- "text" : "[Champions: 10] Last updated at 2020-09-02 15:13:22 GMT"
- },
"tooltip" : {
"headerFormat" : "<span style='font-size:11px'>{series.name}</span><br/>",
"followPointer" : 1,
"pointFormat" : "<span style='color:{point.color}'>{point.name}</span>: <b>{point.y:f}</b><br/>"
},
+ "legend" : {
+ "enabled" : 0
+ },
+ "title" : {
+ "text" : "Perl Weekly Challenge - 076"
+ },
+ "xAxis" : {
+ "type" : "category"
+ },
"drilldown" : {
"series" : [
{
- "id" : "Alexander Pankoff",
"name" : "Alexander Pankoff",
"data" : [
[
"Perl",
2
]
- ]
+ ],
+ "id" : "Alexander Pankoff"
},
{
+ "id" : "Andinus",
"data" : [
[
"Perl",
@@ -47,7 +57,6 @@
1
]
],
- "id" : "Andinus",
"name" : "Andinus"
},
{
@@ -65,13 +74,13 @@
]
},
{
+ "name" : "Mark Anderson",
"data" : [
[
"Raku",
2
]
],
- "name" : "Mark Anderson",
"id" : "Mark Anderson"
},
{
@@ -95,58 +104,89 @@
2
]
],
- "id" : "Roger Bell_West",
- "name" : "Roger Bell_West"
+ "name" : "Myoungjin Jeon",
+ "id" : "Myoungjin Jeon"
},
{
- "name" : "Simon Green",
- "id" : "Simon Green",
"data" : [
[
"Perl",
- 2
+ 1
],
[
"Blog",
1
]
- ]
+ ],
+ "name" : "Neil Bowers",
+ "id" : "Neil Bowers"
},
{
"data" : [
[
+ "Perl",
+ 2
+ ],
+ [
"Raku",
2
+ ],
+ [
+ "Blog",
+ 1
]
],
- "id" : "Simon Proctor",
- "name" : "Simon Proctor"
+ "name" : "Roger Bell_West",
+ "id" : "Roger Bell_West"
},
{
+ "id" : "Simon Green",
"data" : [
[
"Perl",
+ 2
+ ],
+ [
+ "Blog",
1
]
],
- "id" : "Ulrich Rieke",
- "name" : "Ulrich Rieke"
+ "name" : "Simon Green"
},
{
+ "id" : "Simon Proctor",
+ "name" : "Simon Proctor",
+ "data" : [
+ [
+ "Raku",
+ 2
+ ]
+ ]
+ },
+ {
+ "id" : "Ulrich Rieke",
"data" : [
[
"Perl",
1
]
],
+ "name" : "Ulrich Rieke"
+ },
+ {
"id" : "Yet Ebreo",
- "name" : "Yet Ebreo"
+ "name" : "Yet Ebreo",
+ "data" : [
+ [
+ "Perl",
+ 1
+ ]
+ ]
}
]
},
"series" : [
{
- "colorByPoint" : 1,
"name" : "Perl Weekly Challenge - 076",
"data" : [
{
@@ -155,19 +195,19 @@
"y" : 2
},
{
- "drilldown" : "Andinus",
+ "name" : "Andinus",
"y" : 2,
- "name" : "Andinus"
+ "drilldown" : "Andinus"
},
{
- "y" : 4,
+ "name" : "Luca Ferrari",
"drilldown" : "Luca Ferrari",
- "name" : "Luca Ferrari"
+ "y" : 4
},
{
+ "name" : "Mark Anderson",
"y" : 2,
- "drilldown" : "Mark Anderson",
- "name" : "Mark Anderson"
+ "drilldown" : "Mark Anderson"
},
{
"y" : 1,
@@ -175,13 +215,23 @@
"name" : "Mohammad S Anwar"
},
{
- "name" : "Roger Bell_West",
+ "name" : "Myoungjin Jeon",
"y" : 4,
- "drilldown" : "Roger Bell_West"
+ "drilldown" : "Myoungjin Jeon"
+ },
+ {
+ "drilldown" : "Neil Bowers",
+ "y" : 2,
+ "name" : "Neil Bowers"
+ },
+ {
+ "name" : "Roger Bell_West",
+ "drilldown" : "Roger Bell_West",
+ "y" : 5
},
{
- "y" : 3,
"drilldown" : "Simon Green",
+ "y" : 3,
"name" : "Simon Green"
},
{
@@ -190,25 +240,17 @@
"drilldown" : "Simon Proctor"
},
{
+ "name" : "Ulrich Rieke",
"drilldown" : "Ulrich Rieke",
- "y" : 1,
- "name" : "Ulrich Rieke"
+ "y" : 1
},
{
- "name" : "Yet Ebreo",
"drilldown" : "Yet Ebreo",
- "y" : 1
+ "y" : 1,
+ "name" : "Yet Ebreo"
}
- ]
+ ],
+ "colorByPoint" : 1
}
- ],
- "xAxis" : {
- "type" : "category"
- },
- "title" : {
- "text" : "Perl Weekly Challenge - 076"
- },
- "legend" : {
- "enabled" : 0
- }
+ ]
}
diff --git a/stats/pwc-language-breakdown-summary.json b/stats/pwc-language-breakdown-summary.json
index 84bb24fd75..dc20fe0340 100644
--- a/stats/pwc-language-breakdown-summary.json
+++ b/stats/pwc-language-breakdown-summary.json
@@ -1,49 +1,49 @@
{
- "tooltip" : {
- "pointFormat" : "<b>{point.y:.0f}</b>"
- },
"yAxis" : {
"title" : {
"text" : null
},
"min" : 0
},
+ "subtitle" : {
+ "text" : "Last updated at 2020-09-03 12:51:37 GMT"
+ },
"chart" : {
"type" : "column"
},
- "subtitle" : {
- "text" : "Last updated at 2020-09-02 15:13:22 GMT"
- },
"legend" : {
"enabled" : "false"
},
+ "tooltip" : {
+ "pointFormat" : "<b>{point.y:.0f}</b>"
+ },
"series" : [
{
- "name" : "Contributions",
"dataLabels" : {
- "color" : "#FFFFFF",
- "y" : 10,
- "format" : "{point.y:.0f}",
"align" : "right",
+ "format" : "{point.y:.0f}",
"style" : {
- "fontFamily" : "Verdana, sans-serif",
- "fontSize" : "13px"
+ "fontSize" : "13px",
+ "fontFamily" : "Verdana, sans-serif"
},
"rotation" : -90,
- "enabled" : "true"
+ "color" : "#FFFFFF",
+ "enabled" : "true",
+ "y" : 10
},
+ "name" : "Contributions",
"data" : [
[
"Blog",
- 940
+ 942
],
[
"Perl",
- 3163
+ 3166
],
[
"Raku",
- 2059
+ 2061
]
]
}
@@ -52,12 +52,12 @@
"text" : "Perl Weekly Challenge Contributions [2019 - 2020]"
},
"xAxis" : {
+ "type" : "category",
"labels" : {
"style" : {
"fontFamily" : "Verdana, sans-serif",
"fontSize" : "13px"
}
- },
- "type" : "category"
+ }
}
}
diff --git a/stats/pwc-language-breakdown.json b/stats/pwc-language-breakdown.json
index c067b96dab..dde3926bee 100644
--- a/stats/pwc-language-breakdown.json
+++ b/stats/pwc-language-breakdown.json
@@ -1,11 +1,21 @@
{
+ "tooltip" : {
+ "followPointer" : "true",
+ "headerFormat" : "<span style=\"font-size:11px\"></span>",
+ "pointFormat" : "<span style=\"color:{point.color}\">Challenge {point.name}</span>: <b>{point.y:f}</b><br/>"
+ },
"legend" : {
"enabled" : "false"
},
+ "title" : {
+ "text" : "Perl Weekly Challenge Language"
+ },
+ "xAxis" : {
+ "type" : "category"
+ },
"drilldown" : {
"series" : [
{
- "name" : "001",
"id" : "001",
"data" : [
[
@@ -20,7 +30,8 @@
"Blog",
11
]
- ]
+ ],
+ "name" : "001"
},
{
"id" : "002",
@@ -60,7 +71,6 @@
},
{
"name" : "004",
- "id" : "004",
"data" : [
[
"Perl",
@@ -74,9 +84,11 @@
"Blog",
10
]
- ]
+ ],
+ "id" : "004"
},
{
+ "name" : "005",
"data" : [
[
"Perl",
@@ -91,8 +103,7 @@
12
]
],
- "id" : "005",
- "name" : "005"
+ "id" : "005"
},
{
"data" : [
@@ -109,10 +120,12 @@
7
]
],
- "id" : "006",
- "name" : "006"
+ "name" : "006",
+ "id" : "006"
},
{
+ "id" : "007",
+ "name" : "007",
"data" : [
[
"Perl",
@@ -126,13 +139,11 @@
"Blog",
10
]
- ],
- "id" : "007",
- "name" : "007"
+ ]
},
{
- "name" : "008",
"id" : "008",
+ "name" : "008",
"data" : [
[
"Perl",
@@ -149,6 +160,7 @@
]
},
{
+ "name" : "009",
"data" : [
[
"Perl",
@@ -163,11 +175,9 @@
13
]
],
- "id" : "009",
- "name" : "009"
+ "id" : "009"
},
{
- "id" : "010",
"name" : "010",
"data" : [
[
@@ -182,10 +192,10 @@
"Blog",
11
]
- ]
+ ],
+ "id" : "010"
},
{
- "id" : "011",
"name" : "011",
"data" : [
[
@@ -200,7 +210,8 @@
"Blog",
10
]
- ]
+ ],
+ "id" : "011"
},
{
"data" : [
@@ -221,6 +232,7 @@
"id" : "012"
},
{
+ "id" : "013",
"data" : [
[
"Perl",
@@ -235,10 +247,10 @@
13
]
],
- "id" : "013",
"name" : "013"
},
{
+ "name" : "014",
"data" : [
[
"Perl",
@@ -253,12 +265,9 @@
15
]
],
- "name" : "014",
"id" : "014"
},
{
- "name" : "015",
- "id" : "015",
"data" : [
[
"Perl",
@@ -272,11 +281,12 @@
"Blog",
15
]
- ]
+ ],
+ "name" : "015",
+ "id" : "015"
},
{
"name" : "016",
- "id" : "016",
"data" : [
[
"Perl",
@@ -290,9 +300,11 @@
"Blog",
12
]
- ]
+ ],
+ "id" : "016"
},
{
+ "id" : "017",
"data" : [
[
"Perl",
@@ -307,10 +319,10 @@
12
]
],
- "name" : "017",
- "id" : "017"
+ "name" : "017"
},
{
+ "name" : "018",
"data" : [
[
"Perl",
@@ -325,10 +337,10 @@
14
]
],
- "name" : "018",
"id" : "018"
},
{
+ "id" : "019",
"data" : [
[
"Perl",
@@ -343,10 +355,10 @@
13
]
],
- "id" : "019",
"name" : "019"
},
{
+ "name" : "020",
"data" : [
[
"Perl",
@@ -361,10 +373,10 @@
13
]
],
- "name" : "020",
"id" : "020"
},
{
+ "name" : "021",
"data" : [
[
"Perl",
@@ -379,10 +391,10 @@
10
]
],
- "id" : "021",
- "name" : "021"
+ "id" : "021"
},
{
+ "name" : "022",
"data" : [
[
"Perl",
@@ -397,12 +409,10 @@
10
]
],
- "id" : "022",
- "name" : "022"
+ "id" : "022"
},
{
"id" : "023",
- "name" : "023",
"data" : [
[
"Perl",
@@ -416,11 +426,12 @@
"Blog",
12
]
- ]
+ ],
+ "name" : "023"
},
{
- "name" : "024",
"id" : "024",
+ "name" : "024",
"data" : [
[
"Perl",
@@ -451,12 +462,12 @@
12
]
],
- "id" : "025",
- "name" : "025"
+ "name" : "025",
+ "id" : "025"
},
{
- "name" : "026",
"id" : "026",
+ "name" : "026",
"data" : [
[
"Perl",
@@ -473,6 +484,7 @@
]
},
{
+ "name" : "027",
"data" : [
[
"Perl",
@@ -487,11 +499,9 @@
9
]
],
- "id" : "027",
- "name" : "027"
+ "id" : "027"
},
{
- "id" : "028",
"name" : "028",
"data" : [
[
@@ -506,10 +516,10 @@
"Blog",
9
]
- ]
+ ],
+ "id" : "028"
},
{
- "id" : "029",
"name" : "029",
"data" : [
[
@@ -524,7 +534,8 @@
"Blog",
12
]
- ]
+ ],
+ "id" : "029"
},
{
"id" : "030",
@@ -545,6 +556,7 @@
]
},
{
+ "name" : "031",
"data" : [
[
"Perl",
@@ -559,12 +571,9 @@
9
]
],
- "name" : "031",
"id" : "031"
},
{
- "id" : "032",
- "name" : "032",
"data" : [
[
"Perl",
@@ -578,11 +587,13 @@
"Blog",
10
]
- ]
+ ],
+ "name" : "032",
+ "id" : "032"
},
{
- "name" : "033",
"id" : "033",
+ "name" : "033",
"data" : [
[
"Perl",
@@ -599,8 +610,6 @@
]
},
{
- "name" : "034",
- "id" : "034",
"data" : [
[
"Perl",
@@ -614,9 +623,12 @@
"Blog",
11
]
- ]
+ ],
+ "name" : "034",
+ "id" : "034"
},
{
+ "id" : "035",
"data" : [
[
"Perl",
@@ -631,11 +643,9 @@
9
]
],
- "name" : "035",
- "id" : "035"
+ "name" : "035"
},
{
- "name" : "036",
"id" : "036",
"data" : [
[
@@ -650,9 +660,11 @@
"Blog",
11
]
- ]
+ ],
+ "name" : "036"
},
{
+ "id" : "037",
"data" : [
[
"Perl",
@@ -667,12 +679,10 @@
9
]
],
- "id" : "037",
"name" : "037"
},
{
"id" : "038",
- "name" : "038",
"data" : [
[
"Perl",
@@ -686,7 +696,8 @@
"Blog",
12
]
- ]
+ ],
+ "name" : "038"
},
{
"id" : "039",
@@ -707,8 +718,6 @@
]
},
{
- "name" : "040",
- "id" : "040",
"data" : [
[
"Perl",
@@ -722,11 +731,12 @@
"Blog",
10
]
- ]
+ ],
+ "name" : "040",
+ "id" : "040"
},
{
"name" : "041",
- "id" : "041",
"data" : [
[
"Perl",
@@ -740,11 +750,10 @@
"Blog",
9
]
- ]
+ ],
+ "id" : "041"
},
{
- "id" : "042",
- "name" : "042",
"data" : [
[
"Perl",
@@ -758,11 +767,13 @@
"Blog",
11
]
- ]
+ ],
+ "name" : "042",
+ "id" : "042"
},
{
- "name" : "043",
"id" : "043",
+ "name" : "043",
"data" : [
[
"Perl",
@@ -779,6 +790,7 @@
]
},
{
+ "name" : "044",
"data" : [
[
"Perl",
@@ -793,7 +805,6 @@
11
]
],
- "name" : "044",
"id" : "044"
},
{
@@ -829,12 +840,10 @@
10
]
],
- "id" : "046",
- "name" : "046"
+ "name" : "046",
+ "id" : "046"
},
{
- "id" : "047",
- "name" : "047",
"data" : [
[
"Perl",
@