]> www.fi.muni.cz Git - aoc.git/commitdiff
Day 1: off-by-one errors everywhere
authorJan "Yenya" Kasprzak <kas@fi.muni.cz>
Mon, 1 Dec 2025 05:53:01 +0000 (06:53 +0100)
committerJan "Yenya" Kasprzak <kas@fi.muni.cz>
Mon, 1 Dec 2025 05:53:01 +0000 (06:53 +0100)
2025/01.pl [new file with mode: 0755]
2025/02.pl [new file with mode: 0755]

diff --git a/2025/01.pl b/2025/01.pl
new file mode 100755 (executable)
index 0000000..066423e
--- /dev/null
@@ -0,0 +1,15 @@
+#!/usr/bin/perl -w
+
+use v5.42;
+
+my $n = 50;
+my $z = 0;
+
+while (<>) {
+       y/LR/-+/;
+       $n += $_;
+       $n %= 100;
+       say "n=$n";
+       $z++ if !$n;
+}
+say $z;
diff --git a/2025/02.pl b/2025/02.pl
new file mode 100755 (executable)
index 0000000..a394ac1
--- /dev/null
@@ -0,0 +1,23 @@
+#!/usr/bin/perl -w
+
+use v5.42;
+
+my $n = 50;
+my $z = 0;
+
+while (<>) {
+       y/LR/-+/;
+       my $p = $n;
+       $n += $_;
+       if ($n < 0) {
+               $z += 1 + int(-$n/100);
+               $z-- if !$p;
+       } elsif ($n >= 100) {
+               $z += int($n/100);
+       } elsif ($n == 0) {
+               $z++;
+       }
+       $n %= 100;
+       say "n=$n, z=$z";
+}
+say $z;