aoc-2024/day1-puzzle1.ts

27 lines
587 B
TypeScript
Raw Permalink Normal View History

2024-12-01 04:56:37 -05:00
import fs from "node:fs";
2024-12-01 05:01:55 -05:00
const input = fs.readFileSync("inputs/day1").toString();
2024-12-01 04:56:37 -05:00
const sort = (a: number, b: number) => a - b;
const lists: number[][] = [];
input.split("\n").forEach(line => {
line.split(/\s+/g).forEach((i, list) => {
lists[list] = lists[list] || [];
lists[list].push(Number(i));
})
})
lists.forEach(i => i.sort(sort));
const rows: number[] = [];
lists[0].forEach((a, i) => {
const nums = [a, lists[1][i]].sort(sort);
rows.push(nums[1] - nums[0]);
})
const result = rows.reduce((prev, cur) => prev + cur);
console.log(result);