aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--challenge-286/laurent-rosenfeld/blog1.txt1
-rw-r--r--challenge-286/laurent-rosenfeld/perl/ch-2.pl25
-rw-r--r--challenge-286/laurent-rosenfeld/raku/ch-2.raku20
-rw-r--r--stats/pwc-current.json152
-rw-r--r--stats/pwc-language-breakdown-2019.json622
-rw-r--r--stats/pwc-language-breakdown-2020.json744
-rw-r--r--stats/pwc-language-breakdown-2021.json762
-rw-r--r--stats/pwc-language-breakdown-2022.json386
-rw-r--r--stats/pwc-language-breakdown-2023.json746
-rw-r--r--stats/pwc-language-breakdown-2024.json304
-rw-r--r--stats/pwc-language-breakdown-summary.json60
-rw-r--r--stats/pwc-leaders.json392
-rw-r--r--stats/pwc-summary-1-30.json106
-rw-r--r--stats/pwc-summary-121-150.json42
-rw-r--r--stats/pwc-summary-151-180.json58
-rw-r--r--stats/pwc-summary-181-210.json50
-rw-r--r--stats/pwc-summary-211-240.json44
-rw-r--r--stats/pwc-summary-241-270.json46
-rw-r--r--stats/pwc-summary-271-300.json40
-rw-r--r--stats/pwc-summary-301-330.json68
-rw-r--r--stats/pwc-summary-31-60.json102
-rw-r--r--stats/pwc-summary-61-90.json28
-rw-r--r--stats/pwc-summary-91-120.json116
-rw-r--r--stats/pwc-summary.json670
-rw-r--r--stats/pwc-yearly-language-summary.json160
25 files changed, 2895 insertions, 2849 deletions
diff --git a/challenge-286/laurent-rosenfeld/blog1.txt b/challenge-286/laurent-rosenfeld/blog1.txt
new file mode 100644
index 0000000000..7957bfa817
--- /dev/null
+++ b/challenge-286/laurent-rosenfeld/blog1.txt
@@ -0,0 +1 @@
+https://blogs.perl.org/users/laurent_r/2024/09/perl-weekly-challenge-286-order-game.html
diff --git a/challenge-286/laurent-rosenfeld/perl/ch-2.pl b/challenge-286/laurent-rosenfeld/perl/ch-2.pl
new file mode 100644
index 0000000000..8646d9fc09
--- /dev/null
+++ b/challenge-286/laurent-rosenfeld/perl/ch-2.pl
@@ -0,0 +1,25 @@
+use strict;
+use warnings;
+use feature 'say';
+
+sub max { $_[0] > $_[1] ? $_[0] : $_[1]; }
+
+sub min { $_[0] > $_[1] ? $_[1] : $_[0]; }
+
+sub order_game {
+ my $min = 1;
+ my @in = @_;
+ while (1) {
+ my ($i, $j) = (shift, shift);
+ push @_, $min ? min($i, $j) : max $i, $j;
+ $min = not $min;
+ return $_[0] if @_ == 1;
+ }
+}
+
+my @tests = ([2, 1, 4, 5, 6, 3, 0, 2], [0, 5, 3, 2],
+ [9, 2, 1, 4, 5, 6, 0, 7, 3, 1, 3, 5, 7, 9, 0, 8]);
+for my $test (@tests) {
+ printf "%-8s ... => ", "@$test[0..3]";
+ say order_game @$test;
+}
diff --git a/challenge-286/laurent-rosenfeld/raku/ch-2.raku b/challenge-286/laurent-rosenfeld/raku/ch-2.raku
new file mode 100644
index 0000000000..b90e85317e
--- /dev/null
+++ b/challenge-286/laurent-rosenfeld/raku/ch-2.raku
@@ -0,0 +1,20 @@
+sub order-game (@in is copy) {
+ my $min = True;
+ loop {
+ my @next-list;
+ for @in -> $i, $j {
+ my $new = $min ?? min $i, $j !! max $i, $j;
+ push @next-list, $new;
+ $min = not $min;
+ }
+ return @next-list[0] if @next-list.elems == 1;
+ @in = @next-list;
+ }
+}
+
+my @tests = (2, 1, 4, 5, 6, 3, 0, 2), (0, 5, 3, 2),
+ (9, 2, 1, 4, 5, 6, 0, 7, 3, 1, 3, 5, 7, 9, 0, 8);
+for @tests -> @test {
+ printf "%-8s ... => ", "@test[0..3]";
+ say order-game @test;
+}
diff --git a/stats/pwc-current.json b/stats/pwc-current.json
index 924658ea6b..e337f0a7c6 100644
--- a/stats/pwc-current.json
+++ b/stats/pwc-current.json
@@ -1,42 +1,47 @@
{
- "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
+ "plotOptions" : {
+ "series" : {
+ "dataLabels" : {
+ "format" : "{point.y}",
+ "enabled" : 1
+ },
+ "borderWidth" : 0
+ }
},
"series" : [
{
"name" : "The Weekly Challenge - 286",
+ "colorByPoint" : 1,
"data" : [
{
"drilldown" : "Alexander Karelas",
- "name" : "Alexander Karelas",
- "y" : 1
+ "y" : 1,
+ "name" : "Alexander Karelas"
},
{
"drilldown" : "Cheok-Yin Fung",
- "name" : "Cheok-Yin Fung",
- "y" : 1
+ "y" : 1,
+ "name" : "Cheok-Yin Fung"
},
{
- "drilldown" : "E. Choroba",
+ "y" : 2,
"name" : "E. Choroba",
- "y" : 2
+ "drilldown" : "E. Choroba"
},
{
"name" : "Feng Chang",
- "drilldown" : "Feng Chang",
- "y" : 2
+ "y" : 2,
+ "drilldown" : "Feng Chang"
},
{
+ "name" : "Kjetil Skotheim",
"y" : 2,
- "drilldown" : "Kjetil Skotheim",
- "name" : "Kjetil Skotheim"
+ "drilldown" : "Kjetil Skotheim"
},
{
- "drilldown" : "Laurent Rosenfeld",
+ "y" : 6,
"name" : "Laurent Rosenfeld",
- "y" : 3
+ "drilldown" : "Laurent Rosenfeld"
},
{
"drilldown" : "Niels van Dijke",
@@ -44,14 +49,14 @@
"y" : 2
},
{
- "y" : 5,
"drilldown" : "Packy Anderson",
+ "y" : 5,
"name" : "Packy Anderson"
},
{
- "name" : "Peter Campbell Smith",
"drilldown" : "Peter Campbell Smith",
- "y" : 3
+ "y" : 3,
+ "name" : "Peter Campbell Smith"
},
{
"drilldown" : "Peter Meszaros",
@@ -59,66 +64,67 @@
"y" : 2
},
{
- "drilldown" : "Peter Pentchev",
+ "name" : "Peter Pentchev",
"y" : 2,
- "name" : "Peter Pentchev"
+ "drilldown" : "Peter Pentchev"
},
{
+ "name" : "Roger Bell_West",
"y" : 2,
- "drilldown" : "Roger Bell_West",
- "name" : "Roger Bell_West"
+ "drilldown" : "Roger Bell_West"
},
{
+ "y" : 4,
"name" : "Thomas Kohler",
- "drilldown" : "Thomas Kohler",
- "y" : 4
+ "drilldown" : "Thomas Kohler"
},
{
"y" : 3,
- "drilldown" : "Torgny Lyon",
- "name" : "Torgny Lyon"
+ "name" : "Torgny Lyon",
+ "drilldown" : "Torgny Lyon"
},
{
- "name" : "W. Luis Mochan",
"drilldown" : "W. Luis Mochan",
- "y" : 3
+ "y" : 3,
+ "name" : "W. Luis Mochan"
}
- ],
- "colorByPoint" : 1
+ ]
}
],
+ "tooltip" : {
+ "pointFormat" : "<span style='color:{point.color}'>{point.name}</span>: <b>{point.y:f}</b><br/>",
+ "followPointer" : 1,
+ "headerFormat" : "<span style='font-size:11px'>{series.name}</span><br/>"
+ },
+ "title" : {
+ "text" : "The Weekly Challenge - 286"
+ },
+ "legend" : {
+ "enabled" : 0
+ },
"chart" : {
"type" : "column"
},
- "plotOptions" : {
- "series" : {
- "dataLabels" : {
- "format" : "{point.y}",
- "enabled" : 1
- },
- "borderWidth" : 0
- }
- },
"drilldown" : {
"series" : [
{
- "id" : "Alexander Karelas",
"data" : [
[
"Perl",
1
]
],
+ "id" : "Alexander Karelas",
"name" : "Alexander Karelas"
},
{
+ "name" : "Cheok-Yin Fung",
"data" : [
[
"Perl",
1
]
],
- "name" : "Cheok-Yin Fung",
"id" : "Cheok-Yin Fung"
},
{
@@ -128,8 +134,8 @@
2
]
],
- "name" : "E. Choroba",
- "id" : "E. Choroba"
+ "id" : "E. Choroba",
+ "name" : "E. Choroba"
},
{
"name" : "Feng Chang",
@@ -152,22 +158,22 @@
"id" : "Kjetil Skotheim"
},
{
+ "name" : "Laurent Rosenfeld",
"id" : "Laurent Rosenfeld",
"data" : [
[
"Perl",
- 1
+ 2
],
[
"Raku",
- 1
+ 2
],
[
"Blog",
- 1
+ 2
]
- ],
- "name" : "Laurent Rosenfeld"
+ ]
},
{
"name" : "Niels van Dijke",
@@ -198,8 +204,8 @@
"id" : "Packy Anderson"
},
{
- "id" : "Peter Campbell Smith",
"name" : "Peter Campbell Smith",
+ "id" : "Peter Campbell Smith",
"data" : [
[
"Perl",
@@ -212,28 +218,26 @@
]
},
{
- "id" : "Peter Meszaros",
- "name" : "Peter Meszaros",
"data" : [
[
"Perl",
2
]
- ]
+ ],
+ "id" : "Peter Meszaros",
+ "name" : "Peter Meszaros"
},
{
+ "name" : "Peter Pentchev",
"id" : "Peter Pentchev",
"data" : [
[
"Perl",
2
]
- ],
- "name" : "Peter Pentchev"
+ ]
},
{
- "id" : "Roger Bell_West",
- "name" : "Roger Bell_West",
"data" : [
[
"Perl",
@@ -243,9 +247,12 @@
"Raku",
1
]
- ]
+ ],
+ "id" : "Roger Bell_West",
+ "name" : "Roger Bell_West"
},
{
+ "id" : "Thomas Kohler",
"data" : [
[
"Perl",
@@ -256,11 +263,9 @@
2
]
],
- "name" : "Thomas Kohler",
- "id" : "Thomas Kohler"
+ "name" : "Thomas Kohler"
},
{
- "id" : "Torgny Lyon",
"name" : "Torgny Lyon",
"data" : [
[
@@ -271,7 +276,8 @@
"Blog",
1
]
- ]
+ ],
+ "id" : "Torgny Lyon"
},
{
"data" : [
@@ -284,26 +290,20 @@
1
]
],
- "name" : "W. Luis Mochan",
- "id" : "W. Luis Mochan"
+ "id" : "W. Luis Mochan",
+ "name" : "W. Luis Mochan"
}
]
},
- "yAxis" : {
- "title" : {
- "text" : "Total Solutions"
- }
- },
"subtitle" : {
- "text" : "[Champions: 15] Last updated at 2024-09-10 14:05:23 GMT"
- },
- "title" : {
- "text" : "The Weekly Challenge - 286"
- },
- "legend" : {
- "enabled" : 0
+ "text" : "[Champions: 15] Last updated at 2024-09-10 15:27:16 GMT"
},
"xAxis" : {
"type" : "category"
+ },
+ "yAxis" : {
+ "title" : {
+ "text" : "Total Solutions"
+ }
}
}
diff --git a/stats/pwc-language-breakdown-2019.json b/stats/pwc-language-breakdown-2019.json
index dfcf8941eb..454f51e351 100644
--- a/stats/pwc-language-breakdown-2019.json
+++ b/stats/pwc-language-breakdown-2019.json
@@ -1,13 +1,251 @@
{
"tooltip" : {
- "headerFormat" : "<span style=\"font-size:11px\"></span>",
"pointFormat" : "<span style=\"color:{point.color}\">Challenge {point.name}</span>: <b>{point.y:f}</b><br/>",
+ "headerFormat" : "<span style=\"font-size:11px\"></span>",
"followPointer" : "true"
},
+ "title" : {
+ "text" : "The Weekly Challenge Language"
+ },
+ "chart" : {
+ "type" : "column"
+ },
+ "legend" : {
+ "enabled" : "false"
+ },
+ "plotOptions" : {
+ "series" : {
+ "dataLabels" : {
+ "format" : "{point.y}",
+ "enabled" : 1
+ },
+ "borderWidth" : 0
+ }
+ },
+ "series" : [
+ {
+ "name" : "The Weekly Challenge Languages",
+ "colorByPoint" : "true",
+ "data" : [
+ {
+ "y" : 80,
+ "name" : "041",
+ "drilldown" : "041"
+ },
+ {
+ "y" : 77,
+ "name" : "040",
+ "drilldown" : "040"
+ },
+ {
+ "name" : "039",
+ "y" : 68,
+ "drilldown" : "039"
+ },
+ {
+ "drilldown" : "038",
+ "y" : 74,
+ "name" : "038"
+ },
+ {
+ "drilldown" : "037",
+ "name" : "037",
+ "y" : 70
+ },
+ {
+ "y" : 70,
+ "name" : "036",
+ "drilldown" : "036"
+ },
+ {
+ "drilldown" : "035",
+ "y" : 68,
+ "name" : "035"
+ },
+ {
+ "name" : "034",
+ "y" : 70,
+ "drilldown" : "034"
+ },
+ {
+ "drilldown" : "033",
+ "name" : "033",
+ "y" : 113
+ },
+ {
+ "y" : 97,
+ "name" : "032",
+ "drilldown" : "032"
+ },
+ {
+ "y" : 93,
+ "name" : "031",
+ "drilldown" : "031"
+ },
+ {
+ "name" : "030",
+ "y" : 120,
+ "drilldown" : "030"
+ },
+ {
+ "y" : 83,
+ "name" : "029",
+ "drilldown" : "029"
+ },
+ {
+ "name" : "028",
+ "y" : 82,
+ "drilldown" : "028"
+ },
+ {
+ "name" : "027",
+ "y" : 64,
+ "drilldown" : "027"
+ },
+ {
+ "drilldown" : "026",
+ "name" : "026",
+ "y" : 75
+ },
+ {
+ "y" : 62,
+ "name" : "025",
+ "drilldown" : "025"
+ },
+ {
+ "y" : 77,
+ "name" : "024",
+ "drilldown" : "024"
+ },
+ {
+ "drilldown" : "023",
+ "y" : 88,
+ "name" : "023"
+ },
+ {
+ "drilldown" : "022",
+ "name" : "022",
+ "y" : 72
+ },
+ {
+ "y" : 72,
+ "name" : "021",
+ "drilldown" : "021"
+ },
+ {
+ "y" : 100,
+ "name" : "020",
+ "drilldown" : "020"
+ },
+ {
+ "y" : 101,
+ "name" : "019",
+ "drilldown" : "019"
+ },
+ {
+ "y" : 82,
+ "name" : "018",
+ "drilldown" : "018"
+ },
+ {
+ "name" : "017",
+ "y" : 83,
+ "drilldown" : "017"
+ },
+ {
+ "name" : "016",
+ "y" : 75,
+ "drilldown" : "016"
+ },
+ {
+ "y" : 95,
+ "name" : "015",
+ "drilldown" : "015"
+ },
+ {
+ "name" : "014",
+ "y" : 98,
+ "drilldown" : "014"
+ },
+ {
+ "drilldown" : "013",
+ "y" : 85,
+ "name" : "013"
+ },
+ {
+ "y" : 90,
+ "name" : "012",
+ "drilldown" : "012"
+ },
+ {
+ "drilldown" : "011",
+ "y" : 86,
+ "name" : "011"
+ },
+ {
+ "drilldown" : "010",
+ "y" : 69,
+ "name" : "010"
+ },
+ {
+ "drilldown" : "009",
+ "y" : 79,
+ "name" : "009"
+ },
+ {
+ "name" : "008",
+ "y" : 82,
+ "drilldown" : "008"
+ },
+ {
+ "y" : 71,
+ "name" : "007",
+ "drilldown" : "007"
+ },
+ {
+ "name" : "006",
+ "y" : 63,
+ "drilldown" : "006"
+ },
+ {
+ "drilldown" : "005",
+ "y" : 82,
+ "name" : "005"
+ },
+ {
+ "name" : "004",
+ "y" : 106,
+ "drilldown" : "004"
+ },
+ {
+ "y" : 91,
+ "name" : "003",
+ "drilldown" : "003"
+ },
+ {
+ "drilldown" : "002",
+ "name" : "002",
+ "y" : 133
+ },
+ {
+ "drilldown" : "001",
+ "name" : "001",
+ "y" : 165
+ }
+ ]
+ }
+ ],
+ "xAxis" : {
+ "type" : "category"
+ },
+ "yAxis" : {
+ "title" : {
+ "text" : "Total Solutions"
+ }
+ },
"drilldown" : {
"series" : [
{
- "id" : "041",
"data" : [
[
"Perl",
@@ -22,11 +260,11 @@
9
]
],
+ "id" : "041",
"name" : "041"
},
{
"id" : "040",
- "name" : "040",
"data" : [
[
"Perl",
@@ -40,11 +278,12 @@
"Blog",
10
]
- ]
+ ],
+ "name" : "040"
},
{
- "id" : "039",
"name" : "039",
+ "id" : "039",
"data" : [
[
"Perl",
@@ -61,8 +300,6 @@
]
},
{
- "id" : "038",
- "name" : "038",
"data" : [
[
"Perl",
@@ -76,10 +313,13 @@
"Blog",
12
]
- ]
+ ],
+ "id" : "038",
+ "name" : "038"
},
{
"name" : "037",
+ "id" : "037",
"data" : [
[
"Perl",
@@ -93,10 +333,10 @@
"Blog",
9
]
- ],
- "id" : "037"
+ ]
},
{
+ "id" : "036",
"data" : [
[
"Perl",
@@ -111,12 +351,11 @@
11
]
],
- "name" : "036",
- "id" : "036"
+ "name" : "036"
},
{
- "id" : "035",
"name" : "035",
+ "id" : "035",
"data" : [
[
"Perl",
@@ -133,6 +372,7 @@
]
},
{
+ "name" : "034",
"id" : "034",
"data" : [
[
@@ -147,10 +387,10 @@
"Blog",
11
]
- ],
- "name" : "034"
+ ]
},
{
+ "name" : "033",
"data" : [
[
"Perl",
@@ -165,7 +405,6 @@
10
]
],
- "name" : "033",
"id" : "033"
},
{
@@ -187,6 +426,7 @@
"name" : "032"
},
{
+ "id" : "031",
"data" : [
[
"Perl",
@@ -201,10 +441,11 @@
9
]
],
- "name" : "031",
- "id" : "031"
+ "name" : "031"
},
{
+ "name" : "030",
+ "id" : "030",
"data" : [
[
"Perl",
@@ -218,12 +459,10 @@
"Blog",
10
]
- ],
- "name" : "030",
- "id" : "030"
+ ]
},
{
- "name" : "029",
+ "id" : "029",
"data" : [
[
"Perl",
@@ -238,11 +477,10 @@
12
]
],
- "id" : "029"
+ "name" : "029"
},
{
"id" : "028",
- "name" : "028",
"data" : [
[
"Perl",
@@ -256,7 +494,8 @@
"Blog",
9
]
- ]
+ ],
+ "name" : "028"
},
{
"id" : "027",
@@ -277,6 +516,7 @@
"name" : "027"
},
{
+ "name" : "026",
"data" : [
[
"Perl",
@@ -291,11 +531,9 @@
10
]
],
- "name" : "026",
"id" : "026"
},
{
- "id" : "025",
"name" : "025",
"data" : [
[
@@ -310,9 +548,11 @@
"Blog",
12
]
- ]
+ ],
+ "id" : "025"
},
{
+ "id" : "024",
"data" : [
[
"Perl",
@@ -327,10 +567,11 @@
11
]
],
- "name" : "024",
- "id" : "024"
+ "name" : "024"
},
{
+ "name" : "023",
+ "id" : "023",
"data" : [
[
"Perl",
@@ -344,13 +585,9 @@
"Blog",
12
]
- ],
- "name" : "023",
- "id" : "023"
+ ]
},
{
- "id" : "022",
- "name" : "022",
"data" : [
[
"Perl",
@@ -364,7 +601,9 @@
"Blog",
10
]
- ]
+ ],
+ "id" : "022",
+ "name" : "022"
},
{
"name" : "021",
@@ -385,7 +624,6 @@
"id" : "021"
},
{
- "id" : "020",
"name" : "020",
"data" : [
[
@@ -400,9 +638,11 @@
"Blog",
13
]
- ]
+ ],
+ "id" : "020"
},
{
+ "name" : "019",
"id" : "019",
"data" : [
[
@@ -417,8 +657,7 @@
"Blog",
13
]
- ],
- "name" : "019"
+ ]
},
{
"data" : [
@@ -435,11 +674,12 @@
14
]
],
- "name" : "018",
- "id" : "018"
+ "id" : "018",
+ "name" : "018"
},
{
"name" : "017",
+ "id" : "017",
"data" : [
[
"Perl",
@@ -453,11 +693,10 @@
"Blog",
12
]
- ],
- "id" : "017"
+ ]
},
{
- "id" : "016",
+ "name" : "016",
"data" : [
[
"Perl",
@@ -472,9 +711,10 @@
13
]
],
- "name" : "016"
+ "id" : "016"
},
{
+ "name" : "015",
"data" : [
[
"Perl",
@@ -489,11 +729,10 @@
15
]
],
- "name" : "015",
"id" : "015"
},
{
- "id" : "014",
+ "name" : "014",
"data" : [
[
"Perl",
@@ -508,11 +747,10 @@
15
]
],
- "name" : "014"
+ "id" : "014"
},
{
"id" : "013",
- "name" : "013",
"data" : [
[
"Perl",
@@ -526,7 +764,8 @@
"Blog",
13
]
- ]
+ ],
+ "name" : "013"
},
{
"data" : [
@@ -543,11 +782,10 @@
11
]
],
- "name" : "012",
- "id" : "012"
+ "id" : "012",
+ "name" : "012"
},
{
- "name" : "011",
"data" : [
[
"Perl",
@@ -562,10 +800,12 @@
10
]
],
- "id" : "011"
+ "id" : "011",
+ "name" : "011"
},
{
"name" : "010",
+ "id" : "010",
"data" : [
[
"Perl",
@@ -579,11 +819,9 @@
"Blog",
11
]
- ],
- "id" : "010"
+ ]
},
{
- "id" : "009",
"data" : [
[
"Perl",
@@ -598,10 +836,12 @@
13
]
],
+ "id" : "009",
"name" : "009"
},
{
"name" : "008",
+ "id" : "008",
"data" : [