From 03a0bc78364cabf2d7791530ed1aa1ed53336a55 Mon Sep 17 00:00:00 2001 From: Yanick Champoux Date: Thu, 8 Dec 2022 16:27:32 -0500 Subject: [PATCH] prettier --- 2022/08/part1.js | 12 ++++++++---- 2022/08/part2.js | 20 +++++--------------- 2 files changed, 13 insertions(+), 19 deletions(-) diff --git a/2022/08/part1.js b/2022/08/part1.js index c8f6654..34dd036 100644 --- a/2022/08/part1.js +++ b/2022/08/part1.js @@ -73,10 +73,14 @@ export function generateVisibilityGrid(forest) { export const puzzleInput = readInput(import.meta.url, "input"); export const sample = readInput(import.meta.url, "sample"); -export function printMap(forest) { - forest.forEach((line) => console.log(line.join(" "))); - return forest; -} +export const passthru = (func) => (arg) => { + func(arg); + return arg; +}; + +export const printMap = passthru((forest) => + forest.forEach((line) => console.log(line.join(" "))) +); export default R.createPipe( generateVisibilityGrid, diff --git a/2022/08/part2.js b/2022/08/part2.js index 53b599e..061879c 100644 --- a/2022/08/part2.js +++ b/2022/08/part2.js @@ -1,8 +1,7 @@ import * as R from "remeda"; -import memo from "memoizerific"; import Victor from "@a-robu/victor"; -import { printMap, outOfBound } from "./part1"; +import { outOfBound } from "./part1"; const V = (...args) => new Victor(...args); @@ -21,8 +20,8 @@ function visibility(forest, x, y, dx, dy) { } } -const visibilityAround = (forest) => (x, y) => { - return [ +const visibilityAround = (forest) => (x, y) => + [ [0, 1], [0, -1], [1, 0], @@ -30,20 +29,11 @@ const visibilityAround = (forest) => (x, y) => { ] .map((d) => visibility(forest, x, y, ...d)) .reduce((a, b) => a * b); -}; export default R.createPipe( (forest) => { - const viz = Array(forest.length) - .fill(null) - .map(() => Array(forest.length).fill(0)); - - for (const x of R.range(0, forest.length)) { - for (const y of R.range(0, forest.length)) { - viz[x][y] = visibilityAround(forest)(x, y); - } - } - return viz; + const va = visibilityAround(forest); + return forest.map((l, x) => l.map((_, y) => va(x, y))); }, R.flatten, R.maxBy(R.identity)