my solutions to advent of code
aoc advent-of-code
1const input = (await Bun.file("../input.txt").text()) 2 .trim() 3 .split("\n") 4 .map((str) => str.split("x").map((str) => Number(str) || 0)) as [ 5 number, 6 number, 7 number, 8][]; 9 10// part 1 11console.log( 12 input.reduce((prev, cur) => { 13 const sides = [cur[0] * cur[1], cur[1] * cur[2], cur[0] * cur[2]] as const; 14 return ( 15 prev + (2 * sides[0] + 2 * sides[1] + 2 * sides[2] + Math.min(...sides)) 16 ); 17 }, 0), 18); 19 20// part 2 21console.log( 22 input.reduce((prev, cur) => { 23 const smallestPerimeter = Math.min( 24 2 * cur[0] + 2 * cur[1], 25 2 * cur[1] + 2 * cur[2], 26 2 * cur[2] + 2 * cur[0], 27 ); 28 return prev + (smallestPerimeter + cur[0] * cur[1] * cur[2]); 29 }, 0), 30);