aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMohammad S Anwar <mohammad.anwar@yahoo.com>2022-06-05 12:31:41 +0100
committerMohammad S Anwar <mohammad.anwar@yahoo.com>2022-06-05 12:31:41 +0100
commite1e7c2515eba807b2f12e2e27ee54e47c0701541 (patch)
tree0d9eb138f3c6873f9738fc82ce131d0bae0fdb9b
parent18a163895ca6d1cc72f209a9a9ba6a4713ab8ebc (diff)
downloadperlweeklychallenge-club-e1e7c2515eba807b2f12e2e27ee54e47c0701541.tar.gz
perlweeklychallenge-club-e1e7c2515eba807b2f12e2e27ee54e47c0701541.tar.bz2
perlweeklychallenge-club-e1e7c2515eba807b2f12e2e27ee54e47c0701541.zip
- Added Perl solution to the task "Circular Primes".
-rw-r--r--challenge-167/mohammad-anwar/perl/ch-1.pl71
-rw-r--r--stats/pwc-current.json175
-rw-r--r--stats/pwc-language-breakdown-summary.json40
-rw-r--r--stats/pwc-language-breakdown.json2298
-rw-r--r--stats/pwc-leaders.json742
-rw-r--r--stats/pwc-summary-1-30.json96
-rw-r--r--stats/pwc-summary-121-150.json104
-rw-r--r--stats/pwc-summary-151-180.json98
-rw-r--r--stats/pwc-summary-181-210.json104
-rw-r--r--stats/pwc-summary-211-240.json46
-rw-r--r--stats/pwc-summary-241-270.json30
-rw-r--r--stats/pwc-summary-31-60.json48
-rw-r--r--stats/pwc-summary-61-90.json34
-rw-r--r--stats/pwc-summary-91-120.json118
-rw-r--r--stats/pwc-summary.json50
15 files changed, 2070 insertions, 1984 deletions
diff --git a/challenge-167/mohammad-anwar/perl/ch-1.pl b/challenge-167/mohammad-anwar/perl/ch-1.pl
new file mode 100644
index 0000000000..ff540ac071
--- /dev/null
+++ b/challenge-167/mohammad-anwar/perl/ch-1.pl
@@ -0,0 +1,71 @@
+#!/usr/bin/perl
+
+=head1
+
+Week 167:
+
+ https://theweeklychallenge.org/blog/perl-weekly-challenge-167
+
+Task #1: Circular Prime
+
+ Write a script to find out first 10 circular primes having at
+ least 3 digits (base 10).
+
+=cut
+
+use v5.36;
+use Test::More;
+use experimental qw(builtin);
+use builtin qw(true false);
+
+is_deeply(
+ circular_primes(10),
+ [ 113, 197, 199, 337, 1193, 3779, 11939, 19937, 193939, 199933 ],
+ 'Example'
+);
+
+done_testing;
+
+#
+#
+# METHODS
+
+sub circular_primes($count) {
+ my $cp = [];
+ my $i = 111;
+ while (@$cp < $count) {
+ push @$cp, $i if is_circular_prime($i, $cp);
+ $i++;
+ }
+
+ return $cp;
+}
+
+sub is_circular_prime($n, $cp) {
+ return false if $n =~ /[024568]$/;
+ return false unless is_prime($n);
+
+ foreach my $i (possible_circulars($n)) {
+ return false if grep /$i/, @$cp;
+ return false unless is_prime($i);
+ }
+
+ return true;
+}
+
+sub possible_circulars($n) {
+ my @pc = ();
+ my $l = length($n);
+ for (1 .. $l-1) {
+ $n = substr($n, 1) . substr($n, 0, 1);
+ push @pc, $n;
+ }
+
+ return @pc;
+}
+
+sub is_prime($n) {
+ return false if ($n == 1);
+ do { return false unless $n % $_ } for (2 .. sqrt $n);
+ return true;
+}
diff --git a/stats/pwc-current.json b/stats/pwc-current.json
index 11f4aa99d8..6763f82f3b 100644
--- a/stats/pwc-current.json
+++ b/stats/pwc-current.json
@@ -1,23 +1,35 @@
{
+ "subtitle" : {
+ "text" : "[Champions: 16] Last updated at 2022-06-05 11:28:34 GMT"
+ },
+ "plotOptions" : {
+ "series" : {
+ "borderWidth" : 0,
+ "dataLabels" : {
+ "format" : "{point.y}",
+ "enabled" : 1
+ }
+ }
+ },
"series" : [
{
- "name" : "The Weekly Challenge - 167",
"colorByPoint" : 1,
+ "name" : "The Weekly Challenge - 167",
"data" : [
{
- "name" : "Dave Jacoby",
+ "y" : 2,
"drilldown" : "Dave Jacoby",
- "y" : 2
+ "name" : "Dave Jacoby"
},
{
- "drilldown" : "James Smith",
+ "y" : 3,
"name" : "James Smith",
- "y" : 3
+ "drilldown" : "James Smith"
},
{
- "y" : 2,
"drilldown" : "Jorg Sommrey",
- "name" : "Jorg Sommrey"
+ "name" : "Jorg Sommrey",
+ "y" : 2
},
{
"y" : 1,
@@ -30,34 +42,39 @@
"drilldown" : "Laurent Rosenfeld"
},
{
- "y" : 1,
+ "name" : "Lubos Kolouch",
"drilldown" : "Lubos Kolouch",
- "name" : "Lubos Kolouch"
+ "y" : 1
},
{
- "drilldown" : "Luca Ferrari",
"name" : "Luca Ferrari",
+ "drilldown" : "Luca Ferrari",
"y" : 6
},
{
"y" : 2,
- "drilldown" : "Mark Anderson",
- "name" : "Mark Anderson"
+ "name" : "Mark Anderson",
+ "drilldown" : "Mark Anderson"
},
{
"y" : 1,
+ "name" : "Mohammad S Anwar",
+ "drilldown" : "Mohammad S Anwar"
+ },
+ {
+ "drilldown" : "Niels van Dijke",
"name" : "Niels van Dijke",
- "drilldown" : "Niels van Dijke"
+ "y" : 1
},
{
+ "y" : 3,
"drilldown" : "Peter Campbell Smith",
- "name" : "Peter Campbell Smith",
- "y" : 3
+ "name" : "Peter Campbell Smith"
},
{
- "name" : "Robert Ransbottom",
+ "y" : 2,
"drilldown" : "Robert Ransbottom",
- "y" : 2
+ "name" : "Robert Ransbottom"
},
{
"name" : "Roger Bell_West",
@@ -66,18 +83,18 @@
},
{
"y" : 4,
- "name" : "Ryan Thompson",
- "drilldown" : "Ryan Thompson"
+ "drilldown" : "Ryan Thompson",
+ "name" : "Ryan Thompson"
},
{
- "name" : "Ulrich Rieke",
+ "y" : 2,
"drilldown" : "Ulrich Rieke",
- "y" : 2
+ "name" : "Ulrich Rieke"
},
{
- "name" : "W. Luis Mochan",
+ "y" : 3,
"drilldown" : "W. Luis Mochan",
- "y" : 3
+ "name" : "W. Luis Mochan"
}
]
}
@@ -88,6 +105,22 @@
"title" : {
"text" : "The Weekly Challenge - 167"
},
+ "yAxis" : {
+ "title" : {
+ "text" : "Total Solutions"
+ }
+ },
+ "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/>"
+ },
+ "chart" : {
+ "type" : "column"
+ },
"drilldown" : {
"series" : [
{
@@ -101,8 +134,8 @@
1
]
],
- "id" : "Dave Jacoby",
- "name" : "Dave Jacoby"
+ "name" : "Dave Jacoby",
+ "id" : "Dave Jacoby"
},
{
"data" : [
@@ -115,31 +148,30 @@
1
]
],
- "id" : "James Smith",
- "name" : "James Smith"
+ "name" : "James Smith",
+ "id" : "James Smith"
},
{
- "name" : "Jorg Sommrey",
"id" : "Jorg Sommrey",
"data" : [
[
"Perl",
2
]
- ]
+ ],
+ "name" : "Jorg Sommrey"
},
{
+ "id" : "Julien Fiegehenn",
"name" : "Julien Fiegehenn",
"data" : [
[
"Perl",
1
]
- ],
- "id" : "Julien Fiegehenn"
+ ]
},
{
- "id" : "Laurent Rosenfeld",
"data" : [
[
"Perl",
@@ -154,20 +186,22 @@
1
]
],
- "name" : "Laurent Rosenfeld"
+ "name" : "Laurent Rosenfeld",
+ "id" : "Laurent Rosenfeld"
},
{
- "id" : "Lubos Kolouch",
+ "name" : "Lubos Kolouch",
"data" : [
[
"Perl",
1
]
],
- "name" : "Lubos Kolouch"
+ "id" : "Lubos Kolouch"
},
{
"id" : "Luca Ferrari",
+ "name" : "Luca Ferrari",
"data" : [
[
"Raku",
@@ -177,12 +211,11 @@
"Blog",
4
]
- ],
- "name" : "Luca Ferrari"
+ ]
},
{
- "name" : "Mark Anderson",
"id" : "Mark Anderson",
+ "name" : "Mark Anderson",
"data" : [
[
"Raku",
@@ -191,17 +224,27 @@
]
},
{
- "id" : "Niels van Dijke",
+ "name" : "Mohammad S Anwar",
"data" : [
[
"Perl",
1
]
],
- "name" : "Niels van Dijke"
+ "id" : "Mohammad S Anwar"
},
{
- "id" : "Peter Campbell Smith",
+ "id" : "Niels van Dijke",
+ "name" : "Niels van Dijke",
+ "data" : [
+ [
+ "Perl",
+ 1
+ ]
+ ]
+ },
+ {
+ "name" : "Peter Campbell Smith",
"data" : [
[
"Perl",
@@ -212,20 +255,19 @@
1
]
],
- "name" : "Peter Campbell Smith"
+ "id" : "Peter Campbell Smith"
},
{
+ "id" : "Robert Ransbottom",
+ "name" : "Robert Ransbottom",
"data" : [
[
"Raku",
2
]
- ],
- "id" : "Robert Ransbottom",
- "name" : "Robert Ransbottom"
+ ]
},
{
- "id" : "Roger Bell_West",
"data" : [
[
"Perl",
@@ -240,10 +282,11 @@
1
]
],
- "name" : "Roger Bell_West"
+ "name" : "Roger Bell_West",
+ "id" : "Roger Bell_West"
},
{
- "id" : "Ryan Thompson",
+ "name" : "Ryan Thompson",
"data" : [
[
"Perl",
@@ -254,10 +297,9 @@
2
]
],
- "name" : "Ryan Thompson"
+ "id" : "Ryan Thompson"
},
{
- "name" : "Ulrich Rieke",
"id" : "Ulrich Rieke",
"data" : [
[
@@ -268,10 +310,10 @@
"Raku",
1
]
- ]
+ ],
+ "name" : "Ulrich Rieke"
},
{
- "name" : "W. Luis Mochan",
"data" : [
[
"Perl",
@@ -282,36 +324,9 @@
1
]
],
+ "name" : "W. Luis Mochan",
"id" : "W. Luis Mochan"
}
]
- },
- "yAxis" : {
- "title" : {
- "text" : "Total Solutions"
- }
- },
- "chart" : {
- "type" : "column"
- },
- "tooltip" : {
- "pointFormat" : "<span style='color:{point.color}'>{point.name}</span>: <b>{point.y:f}</b><br/>",
- "headerFormat" : "<span style='font-size:11px'>{series.name}</span><br/>",
- "followPointer" : 1
- },
- "subtitle" : {
- "text" : "[Champions: 15] Last updated at 2022-06-04 17:20:16 GMT"
- },
- "plotOptions" : {
- "series" : {
- "dataLabels" : {
- "enabled" : 1,
- "format" : "{point.y}"
- },
- "borderWidth" : 0
- }
- },
- "xAxis" : {
- "type" : "category"
}
}
diff --git a/stats/pwc-language-breakdown-summary.json b/stats/pwc-language-breakdown-summary.json
index b01b67cd7c..63dac15711 100644
--- a/stats/pwc-language-breakdown-summary.json
+++ b/stats/pwc-language-breakdown-summary.json
@@ -1,6 +1,6 @@
{
- "title" : {
- "text" : "The Weekly Challenge Contributions [2019 - 2022]"
+ "subtitle" : {
+ "text" : "Last updated at 2022-06-05 11:28:34 GMT"
},
"legend" : {
"enabled" : "false"
@@ -14,7 +14,7 @@
],
[
"Perl",
- 8138
+ 8139
],
[
"Raku",
@@ -23,41 +23,41 @@
],
"name" : "Contributions",
"dataLabels" : {
- "enabled" : "true",
+ "y" : 10,
"rotation" : -90,
"color" : "#FFFFFF",
"align" : "right",
- "y" : 10,
+ "enabled" : "true",
"style" : {
- "fontSize" : "13px",
- "fontFamily" : "Verdana, sans-serif"
+ "fontFamily" : "Verdana, sans-serif",
+ "fontSize" : "13px"
},
"format" : "{point.y:.0f}"
}
}
],
+ "title" : {
+ "text" : "The Weekly Challenge Contributions [2019 - 2022]"
+ },
+ "yAxis" : {
+ "title" : {
+ "text" : null
+ },
+ "min" : 0
+ },
"xAxis" : {
"labels" : {
"style" : {
- "fontFamily" : "Verdana, sans-serif",
- "fontSize" : "13px"
+ "fontSize" : "13px",
+ "fontFamily" : "Verdana, sans-serif"
}
},
"type" : "category"
},
- "subtitle" : {
- "text" : "Last updated at 2022-06-04 17:20:16 GMT"
+ "chart" : {
+ "type" : "column"
},
"tooltip" : {
"pointFormat" : "<b>{point.y:.0f}</b>"
- },
- "yAxis" : {
- "min" : 0,
- "title" : {
- "text" : null
- }
- },
- "chart" : {
- "type" : "column"
}
}
diff --git a/stats/pwc-language-breakdown.json b/stats/pwc-language-breakdown.json
index 443bf68b41..56425a95e7 100644
--- a/stats/pwc-language-breakdown.json
+++ b/stats/pwc-language-breakdown.json
@@ -1,858 +1,8 @@
{
- "series" : [
- {
- "name" : "The Weekly Challenge Languages",
- "data" : [
- {
- "name" : "#001",
- "drilldown" : "001",
- "y" : 161
- },
- {
- "y" : 125,
- "drilldown" : "002",
- "name" : "#002"
- },
- {
- "y" : 83,
- "name" : "#003",
- "drilldown" : "003"
- },
- {
- "name" : "#004",
- "drilldown" : "004",
- "y" : 99
- },
- {
- "name" : "#005",
- "drilldown" : "005",
- "y" : 78
- },
- {
- "y" : 58,
- "name" : "#006",
- "drilldown" : "006"
- },
- {
- "y" : 64,
- "name" : "#007",
- "drilldown" : "007"
- },
- {
- "y" : 78,
- "name" : "#008",
- "drilldown" : "008"
- },
- {
- "drilldown" : "009",
- "name" : "#009",
- "y" : 76
- },
- {
- "y" : 65,
- "drilldown" : "010",
- "name" : "#010"
- },
- {
- "drilldown" : "011",
- "name" : "#011",
- "y" : 85
- },
- {
- "y" : 89,
- "drilldown" : "012",
- "name" : "#012"
- },
- {
- "y" : 85,
- "drilldown" : "013",
- "name" : "#013"
- },
- {
- "name" : "#014",
- "drilldown" : "014",
- "y" : 101
- },
- {
- "y" : 99,
- "drilldown" : "015",
- "name" : "#015"
- },
- {
- "name" : "#016",
- "drilldown" : "016",
- "y" : 71
- },
- {
- "y" : 84,
- "name" : "#017",
- "drilldown" : "017"
- },
- {
- "y" : 81,
- "name" : "#018",
- "drilldown" : "018"
- },
- {
- "y" : 103,
- "drilldown" : "019",
- "name" : "#019"
- },
- {
- "y" : 101,
- "name" : "#020",
- "drilldown" : "020"
- },
- {
- "name" : "#021",
- "drilldown" : "021",
- "y" : 72
- },
- {
- "y" : 68,
- "name" : "#022",
- "drilldown" : "022"
- },
- {
- "y" : 97,
- "drilldown" : "023",
- "name" : "#023"
- },
- {
- "y" : 75,
- "name" : "#024",
- "drilldown" : "024"
- },
- {
- "y" : 59,
- "name" : "#025",
- "drilldown" : "025"
- },
- {
- "drilldown" : "026",
- "name" : "#026",
- "y" : 74
- },
- {
- "y" : 62,
- "drilldown" : "027",
- "name" : "#027"
- },
- {
- "y" : 82,
- "drilldown" : "028",
- "name" : "#028"
- },
- {
- "drilldown" : "029",
- "name" : "#029",
- "y" : 81
- },
- {
- "y" : 119,
- "drilldown" : "030",
- "name" : "#030"
- },
- {
- "name" : "#031",
- "drilldown" : "031",
- "y" : 91
- },
- {
- "name" : "#032",
- "drilldown" : "032",
- "y" : 96
- },
- {
- "y" : 112,
- "name" : "#033",
- "drilldown" : "033"
- },
- {
- "y" : 66,
- "drilldown" : "034",
- "name" : "#034"
- },
- {
- "name" : "#035",
- "drilldown" : "035",
- "y" : 66
- },
- {
- "name" : "#036",
- "drilldown" : "036",
- "y" : 70
- },
- {
- "name" : "#037",
- "drilldown" : "037",
- "y" : 69
- },
- {
- "name" : "#038",
- "drilldown" : "038",
- "y" : 70
- },
- {
- "y" : 64,
- "name" : "#039",
- "drilldown" : "039"
- },
- {
- "name" : "#040",
- "drilldown" : "040",
- "y" : 75
- },
- {
- "drilldown" : "041",
- "name" : "#041",
- "y" : 78
- },
- {
- "drilldown" : "042",
- "name" : "#042",
- "y" : 94
- },
- {
- "y" : 70,
- "drilldown" : "043",
- "name" : "#043"
- },
- {
- "y" : 87,
- "drilldown" : "044",
- "name" : "#044"
- },
- {
- "drilldown" : "045",
- "name" : "#045",
- "y" : 98
- },
- {
- "y" : 89,
- "name" : "#046",
- "drilldown" : "046"
- },
- {
- "y" : 86,
- "drilldown" : "047",
- "name" : "#047"
- },
- {
- "name" : "#048",
- "drilldown" : "048",
- "y" : 110
- },
- {
- "y" : 91,
- "name" : "#049",
- "drilldown" : "049"
- },
- {
- "y" : 100,
- "name" : "#050",
- "drilldown" : "050"
- },
- {
- "drilldown" : "051",
- "name" : "#051",
- "y" : 91
- },
- {
- "name" : "#052",
- "drilldown" : "052",
- "y" : 93
- },
- {
- "y" : 103,
- "name" : "#053",
- "drilldown" : "053"
- },
- {
- "name" : "#054",
- "drilldown" : "054",
- "y" : 105
- },
- {
- "drilldown" : "055",
- "name" : "#055",
- "y" : 90
- },
- {
- "y" : 97,
- "name" : "#056",
- "drilldown" : "056"
- },
- {
- "name" : "#057",
- "drilldown" : "057",
- "y" : 82
- },
- {
- "drilldown" : "058",
- "name" : "#058",
- "y" : 71
- },
- {
- "drilldown" : "059",
- "name" : "#059",
- "y" : 91
- },
- {
- "y" : 87,
- "drilldown" : "060",
- "name" : "#060"
- },
- {
- "drilldown" : "061",
- "name" : "#061",
- "y" : 83
- },
- {
- "drilldown" : "062",
- "name" : "#062",
- "y" : 60
- },
- {
- "y" : 91,
- "name" : "#063",
- "drilldown" : "063"
- },
- {
- "name" : "#064",
- "drilldown" : "064",
- "y" : 82
- },
- {
- "y" : 75,
- "name" : "#065",
- "drilldown" : "065"
- },
- {
- "drilldown" : "066",
- "name" : "#066",
- "y" : 86
- },
- {
- "name" : "#067",
- "drilldown" : "067",
- "y" : 92
- },
- {
- "y" : 77,
- "name" : "#068",
- "drilldown" : "068"
- },
- {
- "name" : "#069",
- "drilldown" : "069",
- "y" : 85
- },
- {
- "name" : "#070",
- "drilldown" : "070",
- "y" : 95
- },
- {
- "y" : 80,
- "name" : "#071",
- "drilldown" : "071"
- },
- {
- "name" : "#072",
- "drilldown" : "072",
- "y" : 114
- },
- {
- "drilldown" : "073",
- "name" : "#073",
- "y" : 112
- },
- {
- "y" : 117,
- "drilldown" : "074",
- "name" : "#074"
- },
- {
- "drilldown" : "075",
- "name" : "#075",
- "y" : 117
- },
- {
- "y" : 101,
- "drilldown" : "076",
- "name" : "#076"
- },
- {
- "y" : 100,
- "drilldown" : "077",
- "name" : "#077"
- },
- {
- "name" : "#078",
- "drilldown" : "078",
- "y" : 127
- },
- {
- "y" : 122,
- "drilldown" : "079",
- "name" : "#079"
- },
- {
- "y" : 127,
- "name" : "#080",
- "drilldown" : "080"
- },
- {
- "y" : 114,
- "name" : "#081",
- "drilldown" : "081"
- },
- {
- "y" : 114,
- "name" : "#082",
- "drilldown" : "082"
- },
- {
- "drilldown" : "083",
- "name" : "#083",
- "y" : 127
- },
- {
- "y" : 119,
- "name" : "#084",
- "drilldown" : "084"
- },
- {
- "y" : 114,
- "name" : "#085",
- "drilldown" : "085"
- },
- {
- "y" : 104,
- "name" : "#086",
- "drilldown" : "086"
- },
- {
- "y" : 101,
- "drilldown" : "087",
- "name" : "#087"
- },
- {
- "y" : 121,
- "name" : "#088",
- "drilldown" : "088"
- },
- {
- "y" : 113,
- "name" : "#089",
- "drilldown" : "089"
- },
- {
- "y" : 113,
- "drilldown" : "090",
- "name" : "#090"
- },
- {
- "y" : 108,
- "drilldown" : "091",
- "name" : "#091"
- },
- {
- "drilldown" : "092",
- "name" : "#092",
- "y" : 98
- },
- {
- "drilldown" : "093",
- "name" : "#093",
- "y" : 87
- },
- {
- "drilldown" : "094",
- "name" : "#094",
- "y" : 87
- },
- {
- "y" : 108,
- "name" : "#095",
- "drilldown" : "095"
- },
- {
- "name" : "#096",
- "drilldown" : "096",
- "y" : 108
- },
- {
- "name" : "#097",
- "drilldown" : "097",
- "y" : 111
- },
- {
- "drilldown" : "098",
- "name" : "#098",
- "y" : 108
- },
- {
- "y" : 97,
- "name" : "#099",
- "drilldown" : "099"
- },
- {
- "name" : "#100",
- "drilldown" : "100",
- "y" : 120
- },
- {
- "y" : 83,
- "name" : "#101",
- "drilldown" : "101"
- },
- {
- "y" : 90,
- "name" : "#102",
- "drilldown" : "102"
- },
- {
- "y" : 79,
- "name" : "#103",
- "drilldown" : "103"
- },
- {
- "name" : "#104",
- "drilldown" : "104",
- "y" : 85
- },
- {
- "y" : 75,
- "drilldown" : "105",
- "name" : "#105"
- },
- {
- "drilldown" : "106",
- "name" : "#106",
- "y" : 97
- },
- {
- "drilldown" : "107",
- "name" : "#107",
- "y" : 90
- },
- {
- "y" : 94,
- "drilldown" : "108",
- "name" : "#108"
- },
- {
- "drilldown" : "109",
- "name" : "#109",
- "y" : 107
- },
- {
- "name" : "#110",
- "drilldown" : "110",
- "y" : 108
- },
- {
- "y" : 91,
- "drilldown" : "111",
- "name" : "#111"
- },
- {
- "y" : 92,
- "name"