diff options
| author | Mariano Spadaccini <spadacciniweb@gmail.com> | 2025-09-19 12:44:17 +0200 |
|---|---|---|
| committer | Mariano Spadaccini <spadacciniweb@gmail.com> | 2025-09-19 12:44:17 +0200 |
| commit | 819746a40637d08b83e4e04d38d2cfd2972a7712 (patch) | |
| tree | 728047b1248ea3701305e16ea13eadcf042d5f6c | |
| parent | ff71ca31aa9561aeae6d9a8338db6de63f93066b (diff) | |
| parent | ea3f26b0b25f3ee584bcd58a894418595c12da53 (diff) | |
| download | perlweeklychallenge-club-819746a40637d08b83e4e04d38d2cfd2972a7712.tar.gz perlweeklychallenge-club-819746a40637d08b83e4e04d38d2cfd2972a7712.tar.bz2 perlweeklychallenge-club-819746a40637d08b83e4e04d38d2cfd2972a7712.zip | |
Merge remote-tracking branch 'refs/remotes/origin/PWC-339' into PWC-339
30 files changed, 404 insertions, 46 deletions
diff --git a/challenge-339/bob-lied/README.md b/challenge-339/bob-lied/README.md index 5247e8d471..373adf6206 100644 --- a/challenge-339/bob-lied/README.md +++ b/challenge-339/bob-lied/README.md @@ -1,5 +1,5 @@ -# Solutions to weekly challenge 338 by Bob Lied +# Solutions to weekly challenge 339 by Bob Lied -## [PWC](https://perlweeklychallenge.org/blog/perl-weekly-challenge-338/) -## [GitHub](https://github.com/boblied/perlweeklychallenge-club/tree/master/challenge-338/bob-lied) -[Blog](https://dev.to/boblied/pwc-338-maximal-maximization-of-maximums-4jm1) +## [PWC](https://perlweeklychallenge.org/blog/perl-weekly-challenge-339/) +## [GitHub](https://github.com/boblied/perlweeklychallenge-club/tree/master/challenge-339/bob-lied) +[Blog](https://dev.to/boblied/pwc-339-max-diff-sorting-for-the-win-43c8) diff --git a/challenge-339/bob-lied/blog.txt b/challenge-339/bob-lied/blog.txt new file mode 100644 index 0000000000..41aa667439 --- /dev/null +++ b/challenge-339/bob-lied/blog.txt @@ -0,0 +1 @@ +https://dev.to/boblied/pwc-339-max-diff-sorting-for-the-win-43c8 diff --git a/challenge-339/bob-lied/perl/ch-1.pl b/challenge-339/bob-lied/perl/ch-1.pl new file mode 100644 index 0000000000..4c06115fec --- /dev/null +++ b/challenge-339/bob-lied/perl/ch-1.pl @@ -0,0 +1,178 @@ +#!/usr/bin/env perl +# vim:set ts=4 sw=4 sts=4 et ai wm=0 nu: +#============================================================================= +# Copyright (c) 2025, Bob Lied +#============================================================================= +# ch-1.pl Perl Weekly Challenge 339 Task 1 Max Diff +#============================================================================= +# You are given an array of integers having four or more elements. Write a +# script to find two pairs of numbers from this list (four numbers total) +# so that the difference between their products is as large as possible. +# In the end return the max difference. With Two pairs (a, b) and (c, d), +# the product difference is (a * b) - (c * d). +# Example 1 Input: @ints = (5, 9, 3, 4, 6) +# Output: 42 +# Pair 1: (9, 6) Pair 2: (3, 4) +# Product Diff: (9 * 6) - (3 * 4) => 54 - 12 => 42 +# Example 2 Input: @ints = (1, -2, 3, -4) +# Output: 10 +# Pair 1: (1, -2) Pair 2: (3, -4) +# Example 3 Input: @ints = (-3, -1, -2, -4) +# Output: 10 +# Pair 1: (-1, -2) Pair 2: (-3, -4) +# Example 4 Input: @ints = (10, 2, 0, 5, 1) +# Output: 50 +# Pair 1: (10, 5) Pair 2: (0, 1) +# Example 5 Input: @ints = (7, 8, 9, 10, 10) +# Output: 44 +# Pair 1: (10, 10) Pair 2: (7, 8) +#============================================================================= + +use v5.42; + +use List::Util qw/max min/; + +use Getopt::Long; +my $Verbose = false; +my $DoTest = false; +my $Benchmark = 0; + +GetOptions("test" => \$DoTest, "verbose" => \$Verbose, "benchmark:i" => \$Benchmark); +my $logger; +{ + use Log::Log4perl qw(:easy); + Log::Log4perl->easy_init({ level => ($Verbose ? $DEBUG : $INFO ), + layout => "%d{HH:mm:ss.SSS} %p{1} %m%n" }); + $logger = Log::Log4perl->get_logger(); +} +#============================================================================= + +exit(!runTest()) if $DoTest; +exit( runBenchmark($Benchmark) ) if $Benchmark; + +say maxDiff(@ARGV); + +#============================================================================= +sub maxDiff_BF(@int) +{ + my $max = 0; + for my $w ( 0 .. $#int ) + { + for my $x ( 0 .. $#int ) + { + next if $x == $w; + for my $y ( 0 .. $#int ) + { + next if $y == $x || $y == $w; + for my $z ( 0 .. $#int ) + { + next if $z == $y || $z == $x || $z == $w; + my ($a, $b, $c, $d) = @int[$w,$x,$y,$z]; + + my $diff = max( $a*$b - $c*$d, $c*$d - $a*$b ); + $max = $diff if $diff > $max; + } + } + } + } + return $max; +} + +sub maxDiff(@int) +{ + @int = sort { $a <=> $b } @int; + + # Possibilities for maximum product: biggest positive numbers, biggest + # negative numbers, or biggest positive X biggest negative. + # Find the biggest magnitude, then discard that pair from the list. + my $nn = $int[0] * $int[1]; + my $pp = $int[-1] * $int[-2]; + my $np = $int[0] * $int[-1]; + my $largest; + if ( abs($nn) > abs($pp) ) + { + if ( abs($nn) > abs($np) ) + { + $largest = $nn; + shift @int; shift @int; + } + else + { + $largest = $np; + shift @int; pop @int; + } + } + else # pp >= nn + { + if ( abs($pp) > abs($np) ) + { + $largest = $pp; + pop @int; pop @int; + } + else + { + $largest = $np; + shift @int; pop @int; + } + } + + if ( $largest < 0 ) + { + # Make it the second pair (because negating it will add a big number), + # and find the largest product for the first pair. Again, because the + # list is sorted, the largest magnitude must come from the pairs on + # the ends of the list. + my $aXb = max( $int[0]*$int[1], $int[0]*$int[-1], $int[-2]*$int[-1] ); + return $aXb - $largest; + } + + # Use largest as the first pair for maximum positive contribution. + # Find the smallest product pair to subtract away. + +=begin BlockComment # BlockCommentNo_1 + my $cXd = $int[0] * $int[1]; + while ( defined(my $c = shift @int) ) + { + for my $d ( @int ) + { + $cXd = $c*$d if ( $c*$d < $cXd ); + } + } + +=end BlockComment # BlockCommentNo_1 + +=cut + # Sort so smallest integers are on the outside of the array. + @int = sort { ($a == 0 ? 2 : 1/$a) <=> ($b == 0 ? 2 : 1/$b) } @int; + # -1/2 - 1/3 -1/4 0 1/4 1/3 1/2 + # ----|------|----|----|---|-----|-----|--- + + my $cXd = min( $int[0]*$int[1], $int[0]*$int[-1], $int[-2]*$int[-1] ); + return $largest - $cXd; +} + +sub runTest +{ + use Test2::V0; + + is( maxDiff( 5, 9, 3, 4, 6), 42, "Example 1"); + is( maxDiff( 1, -2, 3, -4), 10, "Example 2"); + is( maxDiff(-3, -1, -2, -4), 10, "Example 3"); + is( maxDiff(10, 2, 0, 5, 1), 50, "Example 4"); + is( maxDiff( 7, 8, 9, 10, 10), 44, "Example 5"); + + is( maxDiff(10, 2, 1, 5, 1), 49, "Example 4 + 1"); + is( maxDiff(10, 2, -1, 5, 1), 52, "Example 4 - 1"); + is( maxDiff(-10, 2, -1, 5, 1), 52, "Example 4 - 10"); + + done_testing; +} + +sub runBenchmark($repeat) +{ + use Benchmark qw/cmpthese/; + + cmpthese($repeat, { + label => sub { }, + }); +} diff --git a/challenge-339/bob-lied/perl/ch-2.pl b/challenge-339/bob-lied/perl/ch-2.pl new file mode 100644 index 0000000000..896460d2dd --- /dev/null +++ b/challenge-339/bob-lied/perl/ch-2.pl @@ -0,0 +1,106 @@ +#!/usr/bin/env perl +# vim:set ts=4 sw=4 sts=4 et ai wm=0 nu: +#============================================================================= +# Copyright (c) 2025, Bob Lied +#============================================================================= +# ch-2.pl Perl Weekly Challenge 339 Task 2 Peak Point +#============================================================================= +# You are given an array of altitude gain. +# Write a script to find the peak point gained. +# +# Example 1 Input: @gain = (-5, 1, 5, -9, 2) +# Output: 1 +# start: 0 1st change: 0 + (-5) = -5 +# 2nd change: -5 + 1 = -4 +# 3rd change: -4 + 5 = 1 +# 4th change: 1 + (-9) = -8 +# 5th change: -8 + 2 = -6 +# max(0, -5, -4, 1, -8, -6) = 1 +# +# Example 2 Input: @gain = (10, 10, 10, -25) +# Output: 30 +# start: 0 1st change: 0 + 10 = 10 +# 2nd change: 10 + 10 = 20 +# 3rd change: 20 + 10 = 30 +# 4th change: 30 + (-25) = 5 +# max(0, 10, 20, 30, 5) = 30 +# +# Example 3 Input: @gain = (3, -4, 2, 5, -6, 1) +# Output: 6 +# Example 4 Input: @gain = (-1, -2, -3, -4) +# Output: 0 +# Example 5 Input: @gain = (-10, 15, 5) +# Output: 10 +#============================================================================= + +use v5.42; + + +use Getopt::Long; +my $Verbose = false; +my $DoTest = false; +my $Benchmark = 0; + +GetOptions("test" => \$DoTest, "verbose" => \$Verbose, "benchmark:i" => \$Benchmark); +my $logger; +{ + use Log::Log4perl qw(:easy); + Log::Log4perl->easy_init({ level => ($Verbose ? $DEBUG : $INFO ), + layout => "%d{HH:mm:ss.SSS} %p{1} %m%n" }); + $logger = Log::Log4perl->get_logger(); +} +#============================================================================= + +exit(!runTest()) if $DoTest; +exit( runBenchmark($Benchmark) ) if $Benchmark; + +say peakPoint(@ARGV); + +#============================================================================= +sub peakPoint(@gain) +{ + my $peak = my $elevation = 0; + while ( defined (my $hike = shift @gain) ) + { + $elevation += $hike; + $peak = $elevation if $elevation > $peak; + } + return $peak; +} + +sub pp(@gain) +{ + use List::Util qw/reductions max/; + return max reductions { $a + $b } 0, @gain; +} + +sub runTest +{ + use Test2::V0; + + is( peakPoint( -5, 1, 5, -9, 2 ) , 1, "Example 1"); + is( peakPoint( 10, 10, 10, -25 ) , 30, "Example 2"); + is( peakPoint( 3, -4, 2, 5, -6, 1) , 6, "Example 3"); + is( peakPoint( -1, -2, -3, -4 ) , 0, "Example 4"); + is( peakPoint(-10, 15, 5 ) , 10, "Example 5"); + + is( pp( -5, 1, 5, -9, 2 ) , 1, "pp Example 1"); + is( pp( 10, 10, 10, -25 ) , 30, "pp Example 2"); + is( pp( 3, -4, 2, 5, -6, 1) , 6, "pp Example 3"); + is( pp( -1, -2, -3, -4 ) , 0, "pp Example 4"); + is( pp(-10, 15, 5 ) , 10, "pp Example 5"); + + done_testing; +} + +sub runBenchmark($repeat) +{ + use Benchmark qw/cmpthese/; + + my @gain; + push @gain, rand(100) for 1 .. 200; + cmpthese($repeat, { + loop => sub { peakPoint(@gain) }, + reduce => sub { pp(@gain) }, + }); +} diff --git a/challenge-339/torgny-lyon/blog.txt b/challenge-339/torgny-lyon/blog.txt new file mode 100644 index 0000000000..9828222192 --- /dev/null +++ b/challenge-339/torgny-lyon/blog.txt @@ -0,0 +1 @@ +https://www.abc.se/~torgny/pwc.html#339 diff --git a/challenge-339/torgny-lyon/perl/ch-1.pl b/challenge-339/torgny-lyon/perl/ch-1.pl new file mode 100755 index 0000000000..f63dc898fe --- /dev/null +++ b/challenge-339/torgny-lyon/perl/ch-1.pl @@ -0,0 +1,16 @@ +#!/usr/bin/perl + +use v5.42; + +use Test::More tests => 5; + +sub find_max_diff { + my @ints = sort { $b <=> $a } map { abs } @_; + $ints[0] * $ints[1] - $ints[$#ints] * $ints[$#ints - 1]; +} + +is(find_max_diff(5, 9, 3, 4, 6), 42); +is(find_max_diff(1, -2, 3, -4), 10); +is(find_max_diff(-3, -1, -2, -4), 10); +is(find_max_diff(10, 2, 0, 5, 1), 50); +is(find_max_diff(7, 8, 9, 10, 10), 44); diff --git a/challenge-339/torgny-lyon/perl/ch-2.pl b/challenge-339/torgny-lyon/perl/ch-2.pl new file mode 100755 index 0000000000..ad724c293d --- /dev/null +++ b/challenge-339/torgny-lyon/perl/ch-2.pl @@ -0,0 +1,18 @@ +#!/usr/bin/perl + +use v5.42; + +use Test::More tests => 5; + +use List::Util qw(max); + +sub find_peak_gain { + my $altitude; + max(0, map { $altitude += $_ } @_); +} + +is(find_peak_gain(-5, 1, 5, -9, 2), 1); +is(find_peak_gain(10, 10, 10, -25), 30); +is(find_peak_gain(3, -4, 2, 5, -6, 1), 6); +is(find_peak_gain(-1, -2, -3, -4), 0); +is(find_peak_gain(-10, 15, 5), 10); diff --git a/stats/pwc-current.json b/stats/pwc-current.json index 43063dfb63..93581daf14 100644 --- a/stats/pwc-current.json +++ b/stats/pwc-current.json @@ -37,6 +37,20 @@ [ "Perl", 2 + ], + [ + "Blog", + 1 + ] + ], + "id" : "Bob Lied", + "name" : "Bob Lied" + }, + { + "data" : [ + [ + "Perl", + 2 ] ], "id" : "David Ferrone", @@ -213,6 +227,20 @@ 2 ], [ + "Blog", + 1 + ] + ], + "id" : "Torgny Lyon", + "name" : "Torgny Lyon" + }, + { + "data" : [ + [ + "Perl", + 2 + ], + [ "Raku", 2 ] @@ -263,6 +291,11 @@ "y" : 2 }, { + "drilldown" : "Bob Lied", + "name" : "Bob Lied", + "y" : 3 + }, + { "drilldown" : "David Ferrone", "name" : "David Ferrone", "y" : 2 @@ -338,6 +371,11 @@ "y" : 4 }, { + "drilldown" : "Torgny Lyon", + "name" : "Torgny Lyon", + "y" : 3 + }, + { "drilldown" : "Ulrich Rieke", "name" : "Ulrich Rieke", "y" : 4 @@ -352,7 +390,7 @@ } ], "subtitle" : { - "text" : "[Champions: 19] Last updated at 2025-09-17 08:22:15 GMT" + "text" : "[Champions: 21] Last updated at 2025-09-17 22:45:09 GMT" }, "title" : { "text" : "The Weekly Challenge - 339" diff --git a/stats/pwc-language-breakdown-2019.json b/stats/pwc-language-breakdown-2019.json index c3ab22f092..024d1e19ee 100644 --- a/stats/pwc-language-breakdown-2019.json +++ b/stats/pwc-language-breakdown-2019.json @@ -970,7 +970,7 @@ } ], "subtitle" : { - "text" : "Click the columns to drilldown the language breakdown. Last updated at 2025-09-17 08:22:15 GMT" + "text" : "Click the columns to drilldown the language breakdown. Last updated at 2025-09-17 22:45:09 GMT" }, "title" : { "text" : "The Weekly Challenge Language" diff --git a/stats/pwc-language-breakdown-2020.json b/stats/pwc-language-breakdown-2020.json index 8540541935..9e9f3e7983 100644 --- a/stats/pwc-language-breakdown-2020.json +++ b/stats/pwc-language-breakdown-2020.json @@ -1223,7 +1223,7 @@ } ], "subtitle" : { - "text" : "Click the columns to drilldown the language breakdown. Last updated at 2025-09-17 08:22:15 GMT" + "text" : "Click the columns to drilldown the language breakdown. Last updated at 2025-09-17 22:45:09 GMT" }, "title" : { "text" : "The Weekly Challenge Language" diff --git a/stats/pwc-language-breakdown-2021.json b/stats/pwc-language-breakdown-2021.json index 792db73f31..0c8f2d3237 100644 --- a/stats/pwc-language-breakdown-2021.json +++ b/stats/pwc-language-breakdown-2021.json @@ -1223,7 +1223,7 @@ } ], "subtitle" : { - "text" : "Click the columns to drilldown the language breakdown. Last updated at 2025-09-17 08:22:15 GMT" + "text" : "Click the columns to drilldown the language breakdown. Last updated at 2025-09-17 22:45:09 GMT" }, "title" : { "text" : "The Weekly Challenge Language" diff --git a/stats/pwc-language-breakdown-2022.json b/stats/pwc-language-breakdown-2022.json index 60b40c83db..cddc5f48c4 100644 --- a/stats/pwc-language-breakdown-2022.json +++ b/stats/pwc-language-breakdown-2022.json @@ -1223,7 +1223,7 @@ } ], "subtitle" : { - "text" : "Click the columns to drilldown the language breakdown. Last updated at 2025-09-17 08:22:15 GMT" + "text" : "Click the columns to drilldown the language breakdown. Last updated at 2025-09-17 22:45:09 GMT" }, "title" : { "text" : "The Weekly Challenge Language" diff --git a/stats/pwc-language-breakdown-2023.json b/stats/pwc-language-breakdown-2023.json index 25125befc9..20dddda212 100644 --- a/stats/pwc-language-breakdown-2023.json +++ b/stats/pwc-language-breakdown-2023.json @@ -1200,7 +1200,7 @@ } ], "subtitle" : { - "text" : "Click the columns to drilldown the language breakdown. Last updated at 2025-09-17 08:22:15 GMT" + "text" : "Click the columns to drilldown the language breakdown. Last updated at 2025-09-17 22:45:09 GMT" }, "title" : { "text" : "The Weekly Challenge Language" diff --git a/stats/pwc-language-breakdown-2024.json b/stats/pwc-language-breakdown-2024.json index 641ebf7460..0f8e8971f9 100644 --- a/stats/pwc-language-breakdown-2024.json +++ b/stats/pwc-language-breakdown-2024.json @@ -1246,7 +1246,7 @@ } ], "subtitle" : { - "text" : "Click the columns to drilldown the language breakdown. Last updated at 2025-09-17 08:22:15 GMT" + "text" : "Click the columns to drilldown the language breakdown. Last updated at 2025-09-17 22:45:09 GMT" }, "title" : { "text" : "The Weekly Challenge Language" diff --git a/stats/pwc-language-breakdown-2025.json b/stats/pwc-language-breakdown-2025.json index bf920ce12d..30bbedb4e8 100644 --- a/stats/pwc-language-breakdown-2025.json +++ b/stats/pwc-language-breakdown-2025.json @@ -8,7 +8,7 @@ "data" : [ [ "Perl", - 31 + 35 ], [ "Raku", @@ -16,7 +16,7 @@ ], [ "Blog", - 7 + 9 ] ], "id" : "339", @@ -691,7 +691,7 @@ { "drilldown" : "339", "name" : "339", - "y" : 52 + "y" : 58 }, { "drilldown" : "338", @@ -878,7 +878,7 @@ } ], "subtitle" : { - "text" : "Click the columns to drilldown the language breakdown. Last updated at 2025-09-17 08:22:15 GMT" + "text" : "Click the columns to drilldown the language breakdown. Last updated at 2025-09-17 22:45:09 GMT" }, "title" : { "text" : "The Weekly Challenge Language" diff --git a/stats/pwc-language-breakdown-summary.json b/stats/pwc-language-breakdown-summary.json index 236241b0d2..fa72a07a8f 100644 --- a/stats/pwc-language-breakdown-summary.json +++ b/stats/pwc-language-breakdown-summary.json @@ -10,7 +10,7 @@ "data" : [ [ "Perl", - 17470 + 17474 ], [ "Raku", @@ -18,7 +18,7 @@ ], [ "Blog", - 6266 + 6268 ] ], "dataLabels" : { @@ -37,7 +37,7 @@ } ], "subtitle" : { - "text" : "Last updated at 2025-09-17 08:22:15 GMT" + "text" : "Last updated at 2025-09-17 22:45:09 GMT" }, "title" : { "text" : "The Weekly Challenge Contributions [2019 - 2025]" diff --git a/stats/pwc-leaders.json b/stats/pwc-leaders.json index ebf65366b1..c3598ac137 100644 --- a/stats/pwc-leaders.json +++ b/stats/pwc-leaders.json @@ -428,11 +428,11 @@ "data" : [ [ "Perl", - 380 + 382 ], [ "Blog", - 47 + 48 ] ], "id" : "Bob Lied", @@ -927,7 +927,7 @@ { "drilldown" : "Bob Lied", "name" : "27: Bob Lied", - "y" : 854 + "y" : 860 }, { "drilldown" : "Robbie Hatley", @@ -1049,7 +1049,7 @@ } ], "subtitle" : { - "text" : "Click the columns to drilldown the score breakdown. Last updated at 2025-09-17 08:22:15 GMT" + "text" : "Click the columns to drilldown the score breakdown. Last updated at 2025-09-17 22:45:09 GMT" }, "title" : { "text" : "Team Leaders (TOP 50)" diff --git a/stats/pwc-summary-1-30.json b/stats/pwc-summary-1-30.json index 0704a1cf84..244250c158 100644 --- a/stats/pwc-summary-1-30.json +++ b/stats/pwc-summary-1-30.json @@ -115,7 +115,7 @@ } ], "subtitle" : { - "text" : "[Champions: 30] Last updated at 2025-09-17 08:22:15 GMT" + "text" : "[Champions: 30] Last updated at 2025-09-17 22:45:09 GMT" }, "title" : { "text" : "The Weekly Challenge [2019 - 2025]" diff --git a/stats/pwc-summary-121-150.json b/stats/pwc-summary-121-150.json index df94dbbdc6..c02ed7fc31 100644 --- a/stats/pwc-summary-121-150.json +++ b/stats/pwc-summary-121-150.json @@ -115,7 +115,7 @@ } ], "subtitle" : { - "text" : "[Champions: 30] Last updated at 2025-09-17 08:22:15 GMT" + "text" : "[Champions: 30] Last updated at 2025-09-17 22:45:09 GMT" }, "title" : { "text" : "The Weekly Challenge [2019 - 2025]" diff --git a/stats/pwc-summary-151-180.json b/stats/pwc-summary-151-180.json index f4ec141bb4..581b88a148 100644 --- a/stats/pwc-summary-151-180.json +++ b/stats/pwc-summary-151-180.json @@ -115,7 +115,7 @@ } ], "subtitle" : { - "text" : "[Champions: 30] Last updated at 2025-09-17 08:22:15 GMT" + "text" : "[Champions: 30] Last updated at 2025-09-17 22:45:09 GMT" }, "title" : { "text" : "The Weekly Challenge [2019 - 2025]" diff --git a/stats/pwc-summary-181-210.json b/stats/pwc-summary-181-210.json index a45270cf12..f0e4f79bbc 100644 --- a/stats/pwc-summary-181-210.json +++ b/stats/pwc-summary-181-210.json @@ -115,7 +115,7 @@ } ], "subtitle" : { - "text" : "[Champions: 30] Last updated at 2025-09-17 08:22:15 GMT" + "text" : "[Champions: 30] Last updated at 2025-09-17 22:45:09 GMT" }, "title" : { "text" : "The Weekly Challenge [2019 - 2025]" diff --git a/stats/pwc-summary-211-240.json b/stats/pwc-summary-211-240.json index d28f3fbd7a..33d70dc1b4 100644 --- a/stats/pwc-summary-211-240.json +++ b/stats/pwc-summary-211-240.json @@ -115,7 +115,7 @@ } ], "subtitle" : { - "text" : "[Champions: 30] Last updated at 2025-09-17 08:22:15 GMT" + "text" : "[Champions: 30] Last updated at 2025-09-17 22:45:09 GMT" }, "title" : { "text" : "The Weekly Challenge [2019 - 2025]" diff --git a/stats/pwc-summary-241-270.json b/stats/pwc-summary-241-270.json index a1193bd3f5..40c3a3e0fa 100644 --- a/stats/pwc-summary-241-270.json +++ b/stats/pwc-summary-241-270.json @@ -115,7 +115,7 @@ } ], "subtitle" : { - "text" : "[Champions: 30] Last updated at 2025-09-17 08:22:15 GMT" + "text" : "[Champions: 30] Last updated at 2025-09-17 22:45:09 GMT" }, "title" : { "text" : "The Weekly Challenge [2019 - 2025]" diff --git a/stats/pwc-summary-271-300.json b/stats/pwc-summary-271-300.json index a1bfb99583..f681fe93b4 100644 --- a/stats/pwc-summary-271-300.json +++ b/stats/pwc-summary-271-300.json @@ -115,7 +115,7 @@ } ], "subtitle" : { - "text" : "[Champions: 30] Last updated at 2025-09-17 08:22:15 GMT" + "text" : "[Champions: 30] Last updated at 2025-09-17 22:45:09 GMT" }, "title" : { "text" : "The Weekly Challenge [2019 - 2025]" diff --git a/stats/pwc-summary-301-330.json b/stats/pwc-summary-301-330.json index fb7fb53e3e..c7087446b3 100644 --- a/stats/pwc-summary-301-330.json +++ b/stats/pwc-summary-301-330.json @@ -15,7 +15,7 @@ 0, 6, 2, - 14, + 16, 5, 8, 0, @@ -81,7 +81,7 @@ 0, 0, 0, - 5, + 6, 0, 0, 0, @@ -109,7 +109,7 @@ } ], "su |
