From 2430fa7168580d31d66fb184622a01d93b4fe9e7 Mon Sep 17 00:00:00 2001 From: Izan Gil <66965250+SrIzan10@users.noreply.github.com> Date: Fri, 1 Dec 2023 19:12:12 +0100 Subject: [PATCH] feat: day 1 part 1 --- 2023/.gitignore | 1 + 2023/src/cli.ts | 2 +- 2023/src/days/1/1.ts | 26 +++++++++++++++++++++++++- 3 files changed, 27 insertions(+), 2 deletions(-) diff --git a/2023/.gitignore b/2023/.gitignore index 3d75225..563a96b 100644 --- a/2023/.gitignore +++ b/2023/.gitignore @@ -170,3 +170,4 @@ dist # IntelliJ based IDEs .idea +input.txt \ No newline at end of file diff --git a/2023/src/cli.ts b/2023/src/cli.ts index be39734..b16d3ca 100644 --- a/2023/src/cli.ts +++ b/2023/src/cli.ts @@ -12,7 +12,7 @@ program const file = dirs.find((dir) => dir.name === `${option.part}.ts`); if (file) { logger('success', `Running day ${day}`) - await import(`./days/${file.name}/${option.part}`); + await import(`./days/${day}/${option.part}.ts`); } else { logger('error', `Day ${day} part ${option.part} not found!`); } diff --git a/2023/src/days/1/1.ts b/2023/src/days/1/1.ts index 058cc01..146e861 100644 --- a/2023/src/days/1/1.ts +++ b/2023/src/days/1/1.ts @@ -1 +1,25 @@ -console.log('asdf') \ No newline at end of file +// REALLY UNCLEAN CODE BUT IT WORKS + +const regex = /\D/g +const array: Array = [] +const file = (await (Bun.file('./src/days/1/input.txt')).text()).split('\n') +file.forEach((line) => { + let arr = Array.from(line.replace(regex, '')).map(Number) + if (arr.length === 0) return + if (arr.length === 1) { + // lol + arr = [Number(`${arr[0]}${arr[0]}`)] + } + if (arr.length >= 2) { + arr = [Number(`${arr[0]}${arr[arr.length - 1]}`)] + } + let sum = 0 + arr.forEach(num => sum += num) + array.push(sum) +}) +console.log(array.length) +let sum = 0 + +array.forEach(num => sum += num) + +console.log(sum) \ No newline at end of file