aboutsummaryrefslogtreecommitdiff
path: root/2025/01/puzzle-2.awk
blob: b0516bfc13c06ccf66ce32a9b1fbdbca3c87e0e6 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#!/usr/bin/awk -f

function mod(n, m)
{
	return ((n % m) + m) % m
}

BEGIN { dial = 50 }

{ n = substr($0, 2) }

/^L/ {
	sign = -1
	acc += int(n / 100) + (n%100 >= dial && dial != 0)
}
/^R/ {
	sign = +1
	acc += int((dial + n) / 100)
}

{ dial = mod(dial + n*sign, 100) }

END { print acc }