expeditaet
Version:
Advent of Code Solutions
19 lines (16 loc) • 610 B
text/typescript
import { task } from '@alexaegis/advent-of-code-lib';
import packageJson from '../package.json';
import { parseLine } from './p1.js';
export const p2 = (input: string): number => {
const lines = input.lines().map(parseLine);
const seabed = new Map<string, number>();
for (const { start, end } of lines) {
for (const element of start.reach(end, true, true)) {
const estr = element.toString();
const existing = seabed.get(estr) ?? 0;
seabed.set(estr, existing + 1);
}
}
return [...seabed.values()].count((pipeHeight) => pipeHeight >= 2);
};
await task(p2, packageJson.aoc); // 22364 ~70.72ms