diff options
-rw-r--r-- | 2023/day06.pl | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/2023/day06.pl b/2023/day06.pl new file mode 100644 index 0000000..92dd798 --- /dev/null +++ b/2023/day06.pl @@ -0,0 +1,20 @@ +use strict; +use warnings; +my (@times, @dists); +while (<>) { + chomp; + @times = split(/ +/) if s/^Time: +//; + @dists = split(/ +/) if s/^Distance: +//; +} +my $ways = 1; +for (my $race = 0; $race < scalar(@times); $race++) { + my $time = $times[$race]; + my $dist = $dists[$race]; + my $wins = 0; + for my $hold (1 .. $time - 1) { + my $travel = $hold * ($time - $hold); + $wins++ if $travel > $dist; + } + $ways *= $wins; +} +print $ways, "\n"; |