aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMohammad S Anwar <mohammad.anwar@yahoo.com>2021-12-22 02:23:00 +0000
committerMohammad S Anwar <mohammad.anwar@yahoo.com>2021-12-22 02:23:00 +0000
commitb4d03121426826be23eeae72bf6ff53efd111dc2 (patch)
treec50b301517936f32b509f86db629123680f1cc64
parent9b6eb33a2212ec55e534b407a5d275032b1822a7 (diff)
downloadperlweeklychallenge-club-b4d03121426826be23eeae72bf6ff53efd111dc2.tar.gz
perlweeklychallenge-club-b4d03121426826be23eeae72bf6ff53efd111dc2.tar.bz2
perlweeklychallenge-club-b4d03121426826be23eeae72bf6ff53efd111dc2.zip
- Added solution by David Santiago.
-rwxr-xr-xchallenge-144/david-santiago/raku/ch-1.raku64
-rw-r--r--stats/pwc-current.json89
-rw-r--r--stats/pwc-language-breakdown-summary.json72
-rw-r--r--stats/pwc-language-breakdown.json1000
-rw-r--r--stats/pwc-leaders.json398
-rw-r--r--stats/pwc-summary-1-30.json48
-rw-r--r--stats/pwc-summary-121-150.json54
-rw-r--r--stats/pwc-summary-151-180.json56
-rw-r--r--stats/pwc-summary-181-210.json34
-rw-r--r--stats/pwc-summary-211-240.json92
-rw-r--r--stats/pwc-summary-241-270.json62
-rw-r--r--stats/pwc-summary-31-60.json112
-rw-r--r--stats/pwc-summary-61-90.json114
-rw-r--r--stats/pwc-summary-91-120.json86
-rw-r--r--stats/pwc-summary.json28
15 files changed, 1194 insertions, 1115 deletions
diff --git a/challenge-144/david-santiago/raku/ch-1.raku b/challenge-144/david-santiago/raku/ch-1.raku
new file mode 100755
index 0000000000..422fb4955f
--- /dev/null
+++ b/challenge-144/david-santiago/raku/ch-1.raku
@@ -0,0 +1,64 @@
+#!/usr/bin/env raku
+
+sub sieve-of-atkin(Int $limit --> List){
+ my @sieve;
+ my @prime-list = (2,3);
+
+ my $x = 1;
+ while $x ** 2 < $limit {
+ my $y = 1;
+ while $y ** 2 < $limit {
+
+ my $n = 4 * $x ** 2 + $y ** 2;
+
+ if $n <= $limit && ($n % 12 == 1 || $n % 12 == 5) {
+ @sieve[$n] = @sieve[$n] ?? False !! True;
+ }
+
+ $n = 3 * $x ** 2 + $y ** 2;
+ if $n <= $limit && $n % 12 == 7 {
+ @sieve[$n] = @sieve[$n] ?? False !! True;
+ }
+
+ $n = (3 * $x ** 2 ) - $y ** 2;
+ if $n <= $limit && $x > $y && $n % 12 == 11 {
+ @sieve[$n] = @sieve[$n] ?? False !! True;
+ }
+ $y++;
+ }
+ $x++;
+ }
+ # Mark all multiples of squares as non-prime
+ my $r = 5;
+ while $r ** 2 < $limit {
+ if @sieve[$r] {
+ loop ( my $i = $r**2; $i < $limit; $i += $r**2 ) {
+ @sieve[$i] = False;
+ }
+ }
+ $r++;
+ }
+
+ for @sieve.kv -> $index, $is-prime {
+ @prime-list.append($index) if $is-prime;
+ }
+
+ return @prime-list;
+}
+
+
+sub MAIN() {
+ my @prime-list := sieve-of-atkin(100);
+ my @combinations = (|@prime-list xx 2 ).flat.combinations(2);
+
+ my %semi-primes;
+ for @combinations -> @comb {
+ my $candidate = @comb[0]*@comb[1];
+ %semi-primes{$candidate} = (@comb[0],@comb[1]) if $candidate < 100;
+ }
+
+ for %semi-primes.keys.sort {
+ say "$_ is Semiprime as $_ = {%semi-primes{$_}.join(' x ')}";
+ }
+
+}
diff --git a/stats/pwc-current.json b/stats/pwc-current.json
index 95cd849d55..80342d9f33 100644
--- a/stats/pwc-current.json
+++ b/stats/pwc-current.json
@@ -1,12 +1,11 @@
{
- "yAxis" : {
- "title" : {
- "text" : "Total Solutions"
- }
+ "legend" : {
+ "enabled" : 0
},
"drilldown" : {
"series" : [
{
+ "name" : "Dave Jacoby",
"data" : [
[
"Perl",
@@ -17,22 +16,31 @@
1
]
],
- "name" : "Dave Jacoby",
"id" : "Dave Jacoby"
},
{
"data" : [
[
+ "Raku",
+ 1
+ ]
+ ],
+ "id" : "David Santiago",
+ "name" : "David Santiago"
+ },
+ {
+ "id" : "E. Choroba",
+ "data" : [
+ [
"Perl",
2
]
],
- "id" : "E. Choroba",
"name" : "E. Choroba"
},
{
- "id" : "Luca Ferrari",
"name" : "Luca Ferrari",
+ "id" : "Luca Ferrari",
"data" : [
[
"Raku",
@@ -45,23 +53,23 @@
]
},
{
- "name" : "Mark Anderson",
- "id" : "Mark Anderson",
"data" : [
[
"Raku",
1
]
- ]
+ ],
+ "id" : "Mark Anderson",
+ "name" : "Mark Anderson"
},
{
+ "name" : "Paulo Custodio",
"data" : [
[
"Perl",
2
]
],
- "name" : "Paulo Custodio",
"id" : "Paulo Custodio"
},
{
@@ -79,6 +87,7 @@
"name" : "Peter Campbell Smith"
},
{
+ "id" : "Roger Bell_West",
"data" : [
[
"Perl",
@@ -93,10 +102,10 @@
1
]
],
- "name" : "Roger Bell_West",
- "id" : "Roger Bell_West"
+ "name" : "Roger Bell_West"
},
{
+ "name" : "Ulrich Rieke",
"data" : [
[
"Perl",
@@ -107,58 +116,63 @@
2
]
],
- "name" : "Ulrich Rieke",
"id" : "Ulrich Rieke"
}
]
},
+ "xAxis" : {
+ "type" : "category"
+ },
"title" : {
"text" : "The Weekly Challenge - 144"
},
"chart" : {
"type" : "column"
},
+ "subtitle" : {
+ "text" : "[Champions: 9] Last updated at 2021-12-22 02:20:21 GMT"
+ },
"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
+ "followPointer" : 1,
+ "headerFormat" : "<span style='font-size:11px'>{series.name}</span><br/>"
+ },
+ "yAxis" : {
+ "title" : {
+ "text" : "Total Solutions"
+ }
},
"plotOptions" : {
"series" : {
"borderWidth" : 0,
"dataLabels" : {
- "format" : "{point.y}",
- "enabled" : 1
+ "enabled" : 1,
+ "format" : "{point.y}"
}
}
},
- "xAxis" : {
- "type" : "category"
- },
- "legend" : {
- "enabled" : 0
- },
- "subtitle" : {
- "text" : "[Champions: 8] Last updated at 2021-12-22 02:01:44 GMT"
- },
"series" : [
{
- "colorByPoint" : 1,
"name" : "The Weekly Challenge - 144",
"data" : [
{
+ "name" : "Dave Jacoby",
"drilldown" : "Dave Jacoby",
- "y" : 3,
- "name" : "Dave Jacoby"
+ "y" : 3
+ },
+ {
+ "drilldown" : "David Santiago",
+ "y" : 1,
+ "name" : "David Santiago"
},
{
- "drilldown" : "E. Choroba",
"name" : "E. Choroba",
+ "drilldown" : "E. Choroba",
"y" : 2
},
{
- "y" : 6,
"name" : "Luca Ferrari",
+ "y" : 6,
"drilldown" : "Luca Ferrari"
},
{
@@ -177,16 +191,17 @@
"drilldown" : "Peter Campbell Smith"
},
{
- "name" : "Roger Bell_West",
+ "drilldown" : "Roger Bell_West",
"y" : 5,
- "drilldown" : "Roger Bell_West"
+ "name" : "Roger Bell_West"
},
{
- "y" : 4,
"name" : "Ulrich Rieke",
- "drilldown" : "Ulrich Rieke"
+ "drilldown" : "Ulrich Rieke",
+ "y" : 4
}
- ]
+ ],
+ "colorByPoint" : 1
}
]
}
diff --git a/stats/pwc-language-breakdown-summary.json b/stats/pwc-language-breakdown-summary.json
index 640586f839..056a84ad78 100644
--- a/stats/pwc-language-breakdown-summary.json
+++ b/stats/pwc-language-breakdown-summary.json
@@ -1,19 +1,18 @@
{
+ "xAxis" : {
+ "type" : "category",
+ "labels" : {
+ "style" : {
+ "fontSize" : "13px",
+ "fontFamily" : "Verdana, sans-serif"
+ }
+ }
+ },
+ "legend" : {
+ "enabled" : "false"
+ },
"series" : [
{
- "name" : "Contributions",
- "dataLabels" : {
- "format" : "{point.y:.0f}",
- "style" : {
- "fontSize" : "13px",
- "fontFamily" : "Verdana, sans-serif"
- },
- "align" : "right",
- "color" : "#FFFFFF",
- "y" : 10,
- "enabled" : "true",
- "rotation" : -90
- },
"data" : [
[
"Blog",
@@ -25,39 +24,40 @@
],
[
"Raku",
- 4172
+ 4173
]
- ]
+ ],
+ "name" : "Contributions",
+ "dataLabels" : {
+ "rotation" : -90,
+ "format" : "{point.y:.0f}",
+ "align" : "right",
+ "enabled" : "true",
+ "y" : 10,
+ "color" : "#FFFFFF",
+ "style" : {
+ "fontSize" : "13px",
+ "fontFamily" : "Verdana, sans-serif"
+ }
+ }
}
],
- "tooltip" : {
- "pointFormat" : "<b>{point.y:.0f}</b>"
+ "yAxis" : {
+ "title" : {
+ "text" : null
+ },
+ "min" : 0
},
"chart" : {
"type" : "column"
},
- "subtitle" : {
- "text" : "Last updated at 2021-12-22 02:01:44 GMT"
- },
"title" : {
"text" : "The Weekly Challenge Contributions [2019 - 2021]"
},
- "legend" : {
- "enabled" : "false"
- },
- "xAxis" : {
- "type" : "category",
- "labels" : {
- "style" : {
- "fontSize" : "13px",
- "fontFamily" : "Verdana, sans-serif"
- }
- }
+ "tooltip" : {
+ "pointFormat" : "<b>{point.y:.0f}</b>"
},
- "yAxis" : {
- "title" : {
- "text" : null
- },
- "min" : 0
+ "subtitle" : {
+ "text" : "Last updated at 2021-12-22 02:20:21 GMT"
}
}
diff --git a/stats/pwc-language-breakdown.json b/stats/pwc-language-breakdown.json
index 967cf5bde5..06e120c9e0 100644
--- a/stats/pwc-language-breakdown.json
+++ b/stats/pwc-language-breakdown.json
@@ -1,9 +1,13 @@
{
+ "xAxis" : {
+ "type" : "category"
+ },
+ "legend" : {
+ "enabled" : "false"
+ },
"drilldown" : {
"series" : [
{
- "id" : "001",
- "name" : "001",
"data" : [
[
"Perl",
@@ -17,10 +21,11 @@
"Blog",
11
]
- ]
+ ],
+ "id" : "001",
+ "name" : "001"
},
{
- "name" : "002",
"id" : "002",
"data" : [
[
@@ -35,11 +40,11 @@
"Blog",
10
]
- ]
+ ],
+ "name" : "002"
},
{
"name" : "003",
- "id" : "003",
"data" : [
[
"Perl",
@@ -53,9 +58,11 @@
"Blog",
9
]
- ]
+ ],
+ "id" : "003"
},
{
+ "id" : "004",
"data" : [
[
"Perl",
@@ -70,7 +77,6 @@
10
]
],
- "id" : "004",
"name" : "004"
},
{
@@ -110,7 +116,6 @@
"name" : "006"
},
{
- "id" : "007",
"name" : "007",
"data" : [
[
@@ -125,11 +130,10 @@
"Blog",
10
]
- ]
+ ],
+ "id" : "007"
},
{
- "name" : "008",
- "id" : "008",
"data" : [
[
"Perl",
@@ -143,7 +147,9 @@
"Blog",
12
]
- ]
+ ],
+ "id" : "008",
+ "name" : "008"
},
{
"data" : [
@@ -160,11 +166,10 @@
13
]
],
- "name" : "009",
- "id" : "009"
+ "id" : "009",
+ "name" : "009"
},
{
- "name" : "010",
"id" : "010",
"data" : [
[
@@ -179,9 +184,12 @@
"Blog",
11
]
- ]
+ ],
+ "name" : "010"
},
{
+ "name" : "011",
+ "id" : "011",
"data" : [
[
"Perl",
@@ -195,13 +203,10 @@
"Blog",
10
]
- ],
- "name" : "011",
- "id" : "011"
+ ]
},
{
"name" : "012",
- "id" : "012",
"data" : [
[
"Perl",
@@ -215,9 +220,11 @@
"Blog",
11
]
- ]
+ ],
+ "id" : "012"
},
{
+ "id" : "013",
"data" : [
[
"Perl",
@@ -232,8 +239,7 @@
13
]
],
- "name" : "013",
- "id" : "013"
+ "name" : "013"
},
{
"data" : [
@@ -254,6 +260,7 @@
"name" : "014"
},
{
+ "name" : "015",
"data" : [
[
"Perl",
@@ -268,12 +275,10 @@
15
]
],
- "id" : "015",
- "name" : "015"
+ "id" : "015"
},
{
"id" : "016",
- "name" : "016",
"data" : [
[
"Perl",
@@ -287,9 +292,11 @@
"Blog",
12
]
- ]
+ ],
+ "name" : "016"
},
{
+ "name" : "017",
"data" : [
[
"Perl",
@@ -304,10 +311,10 @@
12
]
],
- "name" : "017",
"id" : "017"
},
{
+ "id" : "018",
"data" : [
[
"Perl",
@@ -322,8 +329,7 @@
14
]
],
- "name" : "018",
- "id" : "018"
+ "name" : "018"
},
{
"name" : "019",
@@ -358,12 +364,10 @@
13
]
],
- "name" : "020",
- "id" : "020"
+ "id" : "020",
+ "name" : "020"
},
{
- "name" : "021",
- "id" : "021",
"data" : [
[
"Perl",
@@ -377,9 +381,13 @@
"Blog",
10
]
- ]
+ ],
+ "id" : "021",
+ "name" : "021"
},
{
+ "name" : "022",
+ "id" : "022",
"data" : [
[
"Perl",
@@ -393,13 +401,11 @@
"Blog",
10
]
- ],
- "name" : "022",
- "id" : "022"
+ ]
},
{
- "id" : "023",
"name" : "023",
+ "id" : "023",
"data" : [
[
"Perl",
@@ -416,7 +422,6 @@
]
},
{
- "name" : "024",
"id" : "024",
"data" : [
[
@@ -431,9 +436,11 @@
"Blog",
11
]
- ]
+ ],
+ "name" : "024"
},
{
+ "name" : "025",
"data" : [
[
"Perl",
@@ -448,11 +455,9 @@
12
]
],
- "id" : "025",
- "name" : "025"
+ "id" : "025"
},
{
- "id" : "026",
"name" : "026",
"data" : [
[
@@ -467,7 +472,8 @@
"Blog",
10
]
- ]
+ ],
+ "id" : "026"
},
{
"data" : [
@@ -484,10 +490,11 @@
9
]
],
- "name" : "027",
- "id" : "027"
+ "id" : "027",
+ "name" : "027"
},
{
+ "name" : "028",
"data" : [
[
"Perl",
@@ -502,8 +509,7 @@
9
]
],
- "id" : "028",
- "name" : "028"
+ "id" : "028"
},
{
"data" : [
@@ -520,8 +526,8 @@
12
]
],
- "name" : "029",
- "id" : "029"
+ "id" : "029",
+ "name" : "029"
},
{
"data" : [
@@ -538,10 +544,11 @@
10
]
],
- "name" : "030",
- "id" : "030"
+ "id" : "030",
+ "name" : "030"
},
{
+ "id" : "031",
"data" : [
[
"Perl",
@@ -556,12 +563,11 @@
9
]
],
- "name" : "031",
- "id" : "031"
+ "name" : "031"
},
{
- "id" : "032",
"name" : "032",
+ "id" : "032",
"data" : [
[
"Perl",
@@ -579,7 +585,6 @@
},
{
"name" : "033",
- "id" : "033",
"data" : [
[
"Perl",
@@ -593,7 +598,8 @@
"Blog",
10
]
- ]
+ ],
+ "id" : "033"
},
{
"name" : "034",
@@ -614,8 +620,6 @@
]
},
{
- "id" : "035",
- "name" : "035",
"data" : [
[
"Perl",
@@ -629,9 +633,13 @@
"Blog",
9
]
- ]
+ ],
+ "id" : "035",
+ "name" : "035"
},
{
+ "name" : "036",
+ "id" : "036",
"data" : [
[
"Perl",
@@ -645,13 +653,9 @@
"Blog",
11
]
- ],
- "id" : "036",
- "name" : "036"
+ ]
},
{
- "name" : "037",
- "id" : "037",
"data" : [
[
"Perl",
@@ -665,9 +669,12 @@
"Blog",
9
]
- ]
+ ],
+ "id" : "037",
+ "name" : "037"
},
{
+ "id" : "038",
"data" : [
[
"Perl",
@@ -682,11 +689,9 @@
12
]
],
- "name" : "038",
- "id" : "038"
+ "name" : "038"
},
{
- "id" : "039",
"name" : "039",
"data" : [
[
@@ -701,9 +706,12 @@
"Blog",
12
]
- ]
+ ],
+ "id" : "039"
},
{
+ "name" : "040",
+ "id" : "040",
"data" : [
[
"Perl",
@@ -717,11 +725,11 @@
"Blog",
10
]
- ],
- "id" : "040",
- "name" : "040"
+ ]
},
{
+ "name" : "041",
+ "id" : "041",
"data" : [
[
"Perl",
@@ -735,11 +743,10 @@
"Blog",
9
]
- ],
- "name" : "041",
- "id" : "041"
+ ]
},
{
+ "name" : "042",
"data" : [
[
"Perl",
@@ -754,7 +761,6 @@
11
]
],
- "name" : "042",
"id" : "042"
},
{
@@ -790,10 +796,11 @@
11
]
],
- "name" : "044",
- "id" : "044"
+ "id" : "044",
+ "name" : "044"
},
{
+ "id" : "045",
"data" : [
[
"Perl",
@@ -808,12 +815,10 @@
11
]
],
- "id" : "045",
"name" : "045"
},
{
"name" : "046",
- "id" : "046",
"data" : [
[
"Perl",
@@ -827,9 +832,11 @@
"Blog",
10
]
- ]
+ ],
+ "id" : "046"
},
{
+ "name" : "047",
"data" : [
[
"Perl",
@@ -844,11 +851,9 @@
10
]
],
- "id" : "047",
- "name" : "047"
+ "id" : "047"
},
{
- "name" : "048",
"id" : "048",
"data" : [
[
@@ -863,11 +868,10 @@
"Blog",
12
]
- ]
+ ],
+ "name" : "048"
},
{
- "name" : "049",
- "id" : "049",
"data" : [
[
"Perl",
@@ -881,10 +885,11 @@
"Blog",
12
]
- ]
+ ],
+ "id" : "049",
+ "name" : "049"
},
{
- "name" : "050",
"id" : "050",
"data" : [
[
@@ -899,9 +904,12 @@
"Blog",
12
]
- ]
+ ],
+ "name" : "050"
},
{
+ "name" : "051",
+ "id" : "051",
"data" : [
[
"Perl",
@@ -915,11 +923,10 @@
"Blog",
11
]
- ],
- "name" : "051",
- "id" : "051"
+ ]
},
{
+ "name" : "052",
"data" : [
[
"Perl",
@@ -934,12 +941,11 @@
14
]
],
- "id" : "052",
- "name" : "052"
+ "id" : "052"
},
{
- "id" : "053",
"name" : "053",
+ "id" : "053",
"data" : [
[
"Perl",
@@ -957,7 +963,6 @@
},
{
"id" : "054",
- "name" : "054",
"data" : [
[
"Perl",
@@ -971,11 +976,10 @@
"Blog",
18
]
- ]
+ ],
+ "name" : "054"
},
{
- "name" : "055",
- "id" : "055",
"data" : [
[
"Perl",
@@ -989,7 +993,9 @@
"Blog",
14
]
- ]
+ ],
+ "id" : "055",
+ "name" : "055"
},
{
"data" : [
@@ -1010,7 +1016,6 @@
"name" : "056"
},
{
- "id" : "057",
"name" : "057",
"data" : [
[
@@ -1025,9 +1030,11 @@
"Blog",
15
]
- ]
+ ],
+ "id" : "057"
},
{
+ "name" : "058",
"data" : [
[
"Perl",
@@ -1042,7 +1049,6 @@
13
]
],
- "name" : "058",
"id" : "058"
},
{
@@ -1060,10 +1066,12 @@
16
]
],
- "name" : "059",
- "id" : "059"
+ "id" : "059",
+ "name" : "059"
},
{
+ "name" : "060",
+ "id" : "060",
"data" : [
[
"Perl",
@@ -1077,11 +1085,11 @@
"Blog",
16
]
- ],
- "id" : "060",
- "name" : "060"
+ ]
},
{
+ "name" : "061",
+ "id" : "061",
"data" : [
[
"Perl",
@@ -1095,13 +1103,11 @@
"Blog",
14
]
- ],
- "id" : "061",
- "name" : "061"
+ ]
},
{
- "id" : "062",
"name" : "062",
+ "id" : "062",
"data" : [
[
"Perl",
@@ -1118,6 +1124,7 @@
]
},
{
+ "name" : "063",
"data" : [
[
"Perl",
@@ -1132,10 +1139,10 @@
13
]
],
- "name" : "063",
"id" : "063"
},
{
+ "name" : "064",
"data" : [
[
"Perl",
@@ -1150,11 +1157,9 @@
16
]
],
- "name" : "064",
"id" : "064"
},
{
- "name" : "065",
"id" : "065",
"data" : [
[
@@ -1169,11 +1174,10 @@
"Blog",