aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMohammad S Anwar <mohammad.anwar@yahoo.com>2021-08-26 21:02:14 +0100
committerMohammad S Anwar <mohammad.anwar@yahoo.com>2021-08-26 21:02:14 +0100
commit6d40480d994bdf86439eacb219d9ac94314204c5 (patch)
tree5c9215044f094229c1aa31ffb14f53f7790414ea
parent7ee91f7b0eb399aaee646d91c814e4d6c69ac6e0 (diff)
downloadperlweeklychallenge-club-6d40480d994bdf86439eacb219d9ac94314204c5.tar.gz
perlweeklychallenge-club-6d40480d994bdf86439eacb219d9ac94314204c5.tar.bz2
perlweeklychallenge-club-6d40480d994bdf86439eacb219d9ac94314204c5.zip
- Added solutions by Duane Powell.
-rwxr-xr-xchallenge-127/duane-powell/perl/ch-1.pl35
-rwxr-xr-xchallenge-127/duane-powell/perl/ch-2.pl106
-rw-r--r--stats/pwc-current.json155
-rw-r--r--stats/pwc-language-breakdown-summary.json70
-rw-r--r--stats/pwc-language-breakdown.json1798
-rw-r--r--stats/pwc-leaders.json762
-rw-r--r--stats/pwc-summary-1-30.json104
-rw-r--r--stats/pwc-summary-121-150.json28
-rw-r--r--stats/pwc-summary-151-180.json90
-rw-r--r--stats/pwc-summary-181-210.json110
-rw-r--r--stats/pwc-summary-211-240.json118
-rw-r--r--stats/pwc-summary-31-60.json96
-rw-r--r--stats/pwc-summary-61-90.json42
-rw-r--r--stats/pwc-summary-91-120.json28
-rw-r--r--stats/pwc-summary.json46
15 files changed, 1872 insertions, 1716 deletions
diff --git a/challenge-127/duane-powell/perl/ch-1.pl b/challenge-127/duane-powell/perl/ch-1.pl
new file mode 100755
index 0000000000..dcccce4b36
--- /dev/null
+++ b/challenge-127/duane-powell/perl/ch-1.pl
@@ -0,0 +1,35 @@
+#!/usr/bin/perl
+use warnings;
+use strict;
+use feature 'say';
+
+# Problem: https://perlweeklychallenge.org/blog/perl-weekly-challenge-127/ TASK #1
+
+# split input, @ARGV, into two arrays @S1 and @S2
+my @a = @ARGV;
+my $s = scalar @ARGV;
+my $m = $s/2;
+
+my @S1 = splice @ARGV, 0, $m;
+my @S2 = splice @a, $m, $s-$m;
+
+# assume disjoint sets
+my $disjoint = 1;
+my %seen = map { $_ => 1 } @S1;
+foreach (@S2) {
+ if (defined($seen{$_})) {
+ # common member found, not disjoint
+ $disjoint = 0;
+ last;
+ }
+}
+say $disjoint;
+
+__END__
+
+./ch-1.pl 1 2 5 3 4 4 6 7 8 9
+0
+
+./ch-1.pl 1 3 5 7 9 0 2 4 6 8
+1
+
diff --git a/challenge-127/duane-powell/perl/ch-2.pl b/challenge-127/duane-powell/perl/ch-2.pl
new file mode 100755
index 0000000000..f2feae8e47
--- /dev/null
+++ b/challenge-127/duane-powell/perl/ch-2.pl
@@ -0,0 +1,106 @@
+#!/usr/bin/perl
+use warnings;
+use strict;
+use feature 'say';
+use Data::Dumper;
+
+# Problem: https://perlweeklychallenge.org/blog/perl-weekly-challenge-127/ TASK #2
+
+my $in;
+while (@ARGV) {
+ push @{$in}, [shift, shift];
+}
+say "Input:";
+say Dumper($in);
+
+my $pair = shift @{$in};
+my %seen = map { $_ => 1 } @{$pair};
+
+my @out;
+while ( @{$in} ) {
+ $pair = shift @{$in};
+ my ($c, $d) = @{$pair};
+ my $hit = 0;
+ foreach ( $c .. $d ) {
+ $hit = 1 if (defined($seen{$_}));
+ $seen{$_} = 1;
+ }
+ push @out, $pair if ($hit);
+}
+say "Output:";
+say Dumper(\@out);
+
+__END__
+
+./ch-2.pl 1 4 3 5 6 8 12 13 3 20
+Input:
+$VAR1 = [
+ [
+ '1',
+ '4'
+ ],
+ [
+ '3',
+ '5'
+ ],
+ [
+ '6',
+ '8'
+ ],
+ [
+ '12',
+ '13'
+ ],
+ [
+ '3',
+ '20'
+ ]
+ ];
+
+Output:
+$VAR1 = [
+ [
+ '3',
+ '5'
+ ],
+ [
+ '3',
+ '20'
+ ]
+ ];
+
+
+./ch-2.pl 3 4 5 7 6 9 10 12 13 15
+Input:
+$VAR1 = [
+ [
+ '3',
+ '4'
+ ],
+ [
+ '5',
+ '7'
+ ],
+ [
+ '6',
+ '9'
+ ],
+ [
+ '10',
+ '12'
+ ],
+ [
+ '13',
+ '15'
+ ]
+ ];
+
+Output:
+$VAR1 = [
+ [
+ '6',
+ '9'
+ ]
+ ];
+
+
diff --git a/stats/pwc-current.json b/stats/pwc-current.json
index d2614941b2..8b5ff2e44a 100644
--- a/stats/pwc-current.json
+++ b/stats/pwc-current.json
@@ -1,41 +1,42 @@
{
+ "legend" : {
+ "enabled" : 0
+ },
"subtitle" : {
- "text" : "[Champions: 14] Last updated at 2021-08-26 19:30:40 GMT"
+ "text" : "[Champions: 15] Last updated at 2021-08-26 20:00:38 GMT"
},
- "title" : {
- "text" : "The Weekly Challenge - 127"
+ "xAxis" : {
+ "type" : "category"
},
"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
- },
- "yAxis" : {
- "title" : {
- "text" : "Total Solutions"
- }
- },
- "legend" : {
- "enabled" : 0
+ "followPointer" : 1,
+ "headerFormat" : "<span style='font-size:11px'>{series.name}</span><br/>"
},
"series" : [
{
"colorByPoint" : 1,
+ "name" : "The Weekly Challenge - 127",
"data" : [
{
- "y" : 1,
"name" : "Andrew Shitov",
+ "y" : 1,
"drilldown" : "Andrew Shitov"
},
{
+ "name" : "Andrezgz",
"drilldown" : "Andrezgz",
- "y" : 2,
- "name" : "Andrezgz"
+ "y" : 2
},
{
- "drilldown" : "Dave Jacoby",
"name" : "Dave Jacoby",
- "y" : 3
+ "y" : 3,
+ "drilldown" : "Dave Jacoby"
+ },
+ {
+ "y" : 2,
+ "drilldown" : "Duane Powell",
+ "name" : "Duane Powell"
},
{
"name" : "Flavio Poletti",
@@ -44,43 +45,43 @@
},
{
"y" : 3,
- "name" : "James Smith",
- "drilldown" : "James Smith"
+ "drilldown" : "James Smith",
+ "name" : "James Smith"
},
{
- "y" : 4,
"name" : "Luca Ferrari",
- "drilldown" : "Luca Ferrari"
+ "drilldown" : "Luca Ferrari",
+ "y" : 4
},
{
- "y" : 1,
"name" : "Mark Anderson",
- "drilldown" : "Mark Anderson"
+ "drilldown" : "Mark Anderson",
+ "y" : 1
},
{
- "drilldown" : "Niels van Dijke",
"name" : "Niels van Dijke",
+ "drilldown" : "Niels van Dijke",
"y" : 2
},
{
+ "drilldown" : "Olivier Delouya",
"y" : 1,
- "name" : "Olivier Delouya",
- "drilldown" : "Olivier Delouya"
+ "name" : "Olivier Delouya"
},
{
- "drilldown" : "Roger Bell_West",
+ "name" : "Roger Bell_West",
"y" : 5,
- "name" : "Roger Bell_West"
+ "drilldown" : "Roger Bell_West"
},
{
+ "drilldown" : "Simon Proctor",
"y" : 1,
- "name" : "Simon Proctor",
- "drilldown" : "Simon Proctor"
+ "name" : "Simon Proctor"
},
{
- "name" : "Steven Wilson",
"y" : 1,
- "drilldown" : "Steven Wilson"
+ "drilldown" : "Steven Wilson",
+ "name" : "Steven Wilson"
},
{
"name" : "Stuart Little",
@@ -88,41 +89,47 @@
"drilldown" : "Stuart Little"
},
{
- "drilldown" : "W. Luis Mochan",
"y" : 3,
+ "drilldown" : "W. Luis Mochan",
"name" : "W. Luis Mochan"
}
- ],
- "name" : "The Weekly Challenge - 127"
+ ]
}
],
- "xAxis" : {
- "type" : "category"
+ "yAxis" : {
+ "title" : {
+ "text" : "Total Solutions"
+ }
+ },
+ "chart" : {
+ "type" : "column"
+ },
+ "title" : {
+ "text" : "The Weekly Challenge - 127"
},
"drilldown" : {
"series" : [
{
- "name" : "Andrew Shitov",
- "id" : "Andrew Shitov",
"data" : [
[
"Raku",
1
]
- ]
+ ],
+ "name" : "Andrew Shitov",
+ "id" : "Andrew Shitov"
},
{
+ "id" : "Andrezgz",
+ "name" : "Andrezgz",
"data" : [
[
"Perl",
2
]
- ],
- "id" : "Andrezgz",
- "name" : "Andrezgz"
+ ]
},
{
- "id" : "Dave Jacoby",
"data" : [
[
"Perl",
@@ -133,13 +140,26 @@
1
]
],
- "name" : "Dave Jacoby"
+ "name" : "Dave Jacoby",
+ "id" : "Dave Jacoby"
},
{
"data" : [
[
"Perl",
2
+ ]
+ ],
+ "name" : "Duane Powell",
+ "id" : "Duane Powell"
+ },
+ {
+ "id" : "Flavio Poletti",
+ "name" : "Flavio Poletti",
+ "data" : [
+ [
+ "Perl",
+ 2
],
[
"Raku",
@@ -149,11 +169,10 @@
"Blog",
2
]
- ],
- "id" : "Flavio Poletti",
- "name" : "Flavio Poletti"
+ ]
},
{
+ "name" : "James Smith",
"data" : [
[
"Perl",
@@ -164,11 +183,9 @@
1
]
],
- "id" : "James Smith",
- "name" : "James Smith"
+ "id" : "James Smith"
},
{
- "name" : "Luca Ferrari",
"data" : [
[
"Raku",
@@ -179,40 +196,41 @@
2
]
],
+ "name" : "Luca Ferrari",
"id" : "Luca Ferrari"
},
{
- "id" : "Mark Anderson",
"data" : [
[
"Raku",
1
]
],
- "name" : "Mark Anderson"
+ "name" : "Mark Anderson",
+ "id" : "Mark Anderson"
},
{
"id" : "Niels van Dijke",
+ "name" : "Niels van Dijke",
"data" : [
[
"Perl",
2
]
- ],
- "name" : "Niels van Dijke"
+ ]
},
{
+ "name" : "Olivier Delouya",
"data" : [
[
"Perl",
1
]
],
- "id" : "Olivier Delouya",
- "name" : "Olivier Delouya"
+ "id" : "Olivier Delouya"
},
{
- "name" : "Roger Bell_West",
+ "id" : "Roger Bell_West",
"data" : [
[
"Perl",
@@ -227,7 +245,7 @@
1
]
],
- "id" : "Roger Bell_West"
+ "name" : "Roger Bell_West"
},
{
"name" : "Simon Proctor",
@@ -240,18 +258,18 @@
"id" : "Simon Proctor"
},
{
- "name" : "Steven Wilson",
"id" : "Steven Wilson",
"data" : [
[
"Perl",
1
]
- ]
+ ],
+ "name" : "Steven Wilson"
},
{
- "name" : "Stuart Little",
"id" : "Stuart Little",
+ "name" : "Stuart Little",
"data" : [
[
"Perl",
@@ -264,7 +282,6 @@
]
},
{
- "name" : "W. Luis Mochan",
"id" : "W. Luis Mochan",
"data" : [
[
@@ -275,18 +292,16 @@
"Blog",
1
]
- ]
+ ],
+ "name" : "W. Luis Mochan"
}
]
},
- "chart" : {
- "type" : "column"
- },
"plotOptions" : {
"series" : {
"dataLabels" : {
- "format" : "{point.y}",
- "enabled" : 1
+ "enabled" : 1,
+ "format" : "{point.y}"
},
"borderWidth" : 0
}
diff --git a/stats/pwc-language-breakdown-summary.json b/stats/pwc-language-breakdown-summary.json
index 6094c717d4..f1a1ae24e2 100644
--- a/stats/pwc-language-breakdown-summary.json
+++ b/stats/pwc-language-breakdown-summary.json
@@ -1,36 +1,37 @@
{
+ "legend" : {
+ "enabled" : "false"
+ },
"xAxis" : {
+ "type" : "category",
"labels" : {
"style" : {
- "fontSize" : "13px",
- "fontFamily" : "Verdana, sans-serif"
+ "fontFamily" : "Verdana, sans-serif",
+ "fontSize" : "13px"
}
- },
- "type" : "category"
- },
- "chart" : {
- "type" : "column"
- },
- "yAxis" : {
- "min" : 0,
- "title" : {
- "text" : null
}
},
- "legend" : {
- "enabled" : "false"
- },
"subtitle" : {
- "text" : "Last updated at 2021-08-26 19:30:40 GMT"
+ "text" : "Last updated at 2021-08-26 20:00:38 GMT"
},
"tooltip" : {
"pointFormat" : "<b>{point.y:.0f}</b>"
},
- "title" : {
- "text" : "The Weekly Challenge Contributions [2019 - 2021]"
- },
"series" : [
{
+ "name" : "Contributions",
+ "dataLabels" : {
+ "enabled" : "true",
+ "rotation" : -90,
+ "format" : "{point.y:.0f}",
+ "align" : "right",
+ "color" : "#FFFFFF",
+ "style" : {
+ "fontFamily" : "Verdana, sans-serif",
+ "fontSize" : "13px"
+ },
+ "y" : 10
+ },
"data" : [
[
"Blog",
@@ -38,26 +39,25 @@
],
[
"Perl",
- 6064
+ 6066
],
[
"Raku",
3763
]
- ],
- "dataLabels" : {
- "rotation" : -90,
- "y" : 10,
- "align" : "right",
- "style" : {
- "fontFamily" : "Verdana, sans-serif",
- "fontSize" : "13px"
- },
- "format" : "{point.y:.0f}",
- "color" : "#FFFFFF",
- "enabled" : "true"
- },
- "name" : "Contributions"
+ ]
+ }
+ ],
+ "chart" : {
+ "type" : "column"
+ },
+ "yAxis" : {
+ "min" : 0,
+ "title" : {
+ "text" : null
}
- ]
+ },
+ "title" : {
+ "text" : "The Weekly Challenge Contributions [2019 - 2021]"
+ }
}
diff --git a/stats/pwc-language-breakdown.json b/stats/pwc-language-breakdown.json
index dc08dfd868..266a6a12e2 100644
--- a/stats/pwc-language-breakdown.json
+++ b/stats/pwc-language-breakdown.json
@@ -1,683 +1,19 @@
{
- "series" : [
- {
- "colorByPoint" : "true",
- "data" : [
- {
- "y" : 161,
- "name" : "#001",
- "drilldown" : "001"
- },
- {
- "y" : 125,
- "name" : "#002",
- "drilldown" : "002"
- },
- {
- "name" : "#003",
- "y" : 81,
- "drilldown" : "003"
- },
- {
- "y" : 99,
- "name" : "#004",
- "drilldown" : "004"
- },
- {
- "y" : 78,
- "name" : "#005",
- "drilldown" : "005"
- },
- {
- "drilldown" : "006",
- "y" : 58,
- "name" : "#006"
- },
- {
- "y" : 64,
- "name" : "#007",
- "drilldown" : "007"
- },
- {
- "drilldown" : "008",
- "y" : 78,
- "name" : "#008"
- },
- {
- "drilldown" : "009",
- "name" : "#009",
- "y" : 76
- },
- {
- "name" : "#010",
- "y" : 65,
- "drilldown" : "010"
- },
- {
- "y" : 85,
- "name" : "#011",
- "drilldown" : "011"
- },
- {
- "y" : 89,
- "name" : "#012",
- "drilldown" : "012"
- },
- {
- "drilldown" : "013",
- "y" : 85,
- "name" : "#013"
- },
- {
- "drilldown" : "014",
- "y" : 101,
- "name" : "#014"
- },
- {
- "y" : 99,
- "name" : "#015",
- "drilldown" : "015"
- },
- {
- "y" : 71,
- "name" : "#016",
- "drilldown" : "016"
- },
- {
- "drilldown" : "017",
- "name" : "#017",
- "y" : 84
- },
- {
- "name" : "#018",
- "y" : 81,
- "drilldown" : "018"
- },
- {
- "name" : "#019",
- "y" : 103,
- "drilldown" : "019"
- },
- {
- "drilldown" : "020",
- "y" : 101,
- "name" : "#020"
- },
- {
- "name" : "#021",
- "y" : 72,
- "drilldown" : "021"
- },
- {
- "drilldown" : "022",
- "name" : "#022",
- "y" : 68
- },
- {
- "name" : "#023",
- "y" : 97,
- "drilldown" : "023"
- },
- {
- "drilldown" : "024",
- "name" : "#024",
- "y" : 75
- },
- {
- "name" : "#025",
- "y" : 59,
- "drilldown" : "025"
- },
- {
- "drilldown" : "026",
- "y" : 74,
- "name" : "#026"
- },
- {
- "name" : "#027",
- "y" : 60,
- "drilldown" : "027"
- },
- {
- "drilldown" : "028",
- "y" : 80,
- "name" : "#028"
- },
- {
- "drilldown" : "029",
- "name" : "#029",
- "y" : 79
- },
- {
- "drilldown" : "030",
- "name" : "#030",
- "y" : 117
- },
- {
- "y" : 89,
- "name" : "#031",
- "drilldown" : "031"
- },
- {
- "name" : "#032",
- "y" : 94,
- "drilldown" : "032"
- },
- {
- "y" : 110,
- "name" : "#033",
- "drilldown" : "033"
- },
- {
- "y" : 64,
- "name" : "#034",
- "drilldown" : "034"
- },
- {
- "y" : 64,
- "name" : "#035",
- "drilldown" : "035"
- },
- {
- "name" : "#036",
- "y" : 68,
- "drilldown" : "036"
- },
- {
- "name" : "#037",
- "y" : 67,
- "drilldown" : "037"
- },
- {
- "drilldown" : "038",
- "y" : 68,
- "name" : "#038"
- },
- {
- "name" : "#039",
- "y" : 62,
- "drilldown" : "039"
- },
- {
- "drilldown" : "040",
- "y" : 73,
- "name" : "#040"
- },
- {
- "drilldown" : "041",
- "name" : "#041",
- "y" : 76
- },
- {
- "y" : 92,
- "name" : "#042",
- "drilldown" : "042"
- },
- {
- "drilldown" : "043",
- "y" : 68,
- "name" : "#043"
- },
- {
- "drilldown" : "044",
- "name" : "#044",
- "y" : 85
- },
- {
- "drilldown" : "045",
- "y" : 96,
- "name" : "#045"
- },
- {
- "name" : "#046",
- "y" : 87,
- "drilldown" : "046"
- },
- {
- "name" : "#047",
- "y" : 84,
- "drilldown" : "047"
- },
- {
- "drilldown" : "048",
- "y" : 108,
- "name" : "#048"
- },
- {
- "name" : "#049",
- "y" : 89,
- "drilldown" : "049"
- },
- {
- "y" : 98,
- "name" : "#050",
- "drilldown" : "050"
- },
- {
- "drilldown" : "051",
- "y" : 89,
- "name" : "#051"
- },
- {
- "drilldown" : "052",
- "name" : "#052",
- "y" : 91
- },
- {
- "name" : "#053",
- "y" : 101,
- "drilldown" : "053"
- },
- {
- "drilldown" : "054",
- "y" : 103,
- "name" : "#054"
- },
- {
- "name" : "#055",
- "y" : 88,
- "drilldown" : "055"
- },
- {
- "name" : "#056",
- "y" : 95,
- "drilldown" : "056"
- },
- {
- "drilldown" : "057",
- "y" : 80,
- "name" : "#057"
- },
- {
- "drilldown" : "058",
- "y" : 69,
- "name" : "#058"
- },
- {
- "y" : 89,
- "name" : "#059",
- "drilldown" : "059"
- },
- {
- "name" : "#060",
- "y" : 85,
- "drilldown" : "060"
- },
- {
- "name" : "#061",
- "y" : 81,
- "drilldown" : "061"
- },
- {
- "drilldown" : "062",
- "y" : 58,
- "name" : "#062"
- },
- {
- "drilldown" : "063",
- "name" : "#063",
- "y" : 89
- },
- {
- "drilldown" : "064",
- "name" : "#064",
- "y" : 80
- },
- {
- "y" : 73,
- "name" : "#065",
- "drilldown" : "065"
- },
- {
- "drilldown" : "066",
- "y" : 84,
- "name" : "#066"
- },
- {
- "name" : "#067",
- "y" : 90,
- "drilldown" : "067"
- },
- {
- "drilldown" : "068",
- "y" : 75,
- "name" : "#068"
- },
- {
- "drilldown" : "069",
- "y" : 83,
- "name" : "#069"
- },
- {
- "drilldown" : "070",
- "y" : 93,
- "name" : "#070"
- },
- {
- "y" : 78,
- "name" : "#071",
- "drilldown" : "071"
- },
- {
- "drilldown" : "072",
- "y" : 112,
- "name" : "#072"
- },
- {
- "drilldown" : "073",
- "name" : "#073",
- "y" : 110
- },
- {
- "drilldown" : "074",
- "name" : "#074",
- "y" : 115
- },
- {
- "drilldown" : "075",
- "y" : 115,
- "name" : "#075"
- },
- {
- "drilldown" : "076",
- "y" : 99,
- "name" : "#076"
- },
- {
- "y" : 98,
- "name" : "#077",
- "drilldown" : "077"
- },
- {
- "y" : 127,
- "name" : "#078",
- "drilldown" : "078"
- },
- {
- "y" : 122,
- "name" : "#079",
- "drilldown" : "079"
- },
- {
- "drilldown" : "080",
- "y" : 127,
- "name" : "#080"
- },
- {
- "drilldown" : "081",
- "name" : "#081",
- "y" : 114
- },
- {
- "drilldown" : "082",
- "name" : "#082",
- "y" : 114
- },
- {
- "drilldown" : "083",
- "name" : "#083",
- "y" : 127
- },
- {
- "drilldown" : "084",
- "y" : 119,
- "name" : "#084"
- },
- {
- "drilldown" : "085",
- "name" : "#085",
- "y" : 114
- },
- {
- "name" : "#086",
- "y" : 104,
- "drilldown" : "086"
- },
- {
- "drilldown" : "087",
- "name" : "#087",
- "y" : 101
- },
- {
- "name" : "#088",
- "y" : 121,
- "drilldown" : "088"
- },
- {
- "name" : "#089",
- "y" : 113,
- "drilldown" : "089"
- },
- {
- "y" : 113,
- "name" : "#090",
- "drilldown" : "090"
- },
- {
- "name" : "#091",
- "y" : 108,
- "drilldown" : "091"
- },
- {
- "y" : 98,
- "name" : "#092",
- "drilldown" : "092"
- },
- {
- "name" : "#093",
- "y" : 87,
- "drilldown" : "093"
- },
- {
- "name" : "#094",
- "y" : 87,
- "drilldown" : "094"
- },
- {
- "y" : 108,
- "name" : "#095",
- "drilldown" : "095"
- },
- {
- "name" : "#096",
- "y" : 108,
- "drilldown" : "096"
- },
- {
- "y" : 111,
- "name" : "#097",
- "drilldown" : "097"
- },
- {
- "drilldown" : "098",
- "y" : 108,
- "name" : "#098"
- },
- {
- "y" : 97,
- "name" : "#099",
- "drilldown" : "099"
- },
- {