summary refs log tree commit diff homepage
path: root/2022/day15.awk
blob: 08404876c4a10ea55cc803dbb14bb76a6823571c (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
24
25
26
BEGIN {
	FS = "[ =,:]+";
	y = 2000000;
}
function abs(x) {
	return (x < 0 ? -x : x);
}
function dist(x1, y1, x2, y2) {
	return abs(x1 - x2) + abs(y1 - y2);
}
{
	if ($14 == y) B[$12] = 1;
	r = dist($4, $6, $12, $14);
	if (abs(y - $6) <= r) {
		n = r - abs(y - $6);
		for (x = $4-n; x <= $4+n; ++x) {
			Y[x] = 1;
		}
	}
}
END {
	for (x in B) {
		delete Y[x];
	}
	print length(Y);
}
td colspan='3' class='logmsg'> Some compat sources (getentropy_linux.c for example) require OpenSSL. Reported by Robert Scheck. 2020-12-15Import LibreSSL 3.3.1June McEnroe 2020-11-24Import LibreSSL 3.3.0June McEnroe 2020-10-22Import LibreSSL 3.2.2June McEnroe 2020-09-29Import LibreSSL 3.2.1June McEnroe 2020-09-29import: Add m4/ax_add_fortify_source.m4June McEnroe 2020-08-05build: Add README.7 to EXTRA_DIST 3.2.0June McEnroe 2020-08-03doc: Indicate that only OpenSSL 1.1.1b and newer workJune McEnroe