d3p2
This commit is contained in:
@@ -3,18 +3,28 @@ import { readFile, sum } from "../../utils";
|
|||||||
|
|
||||||
let input = readFile(path.resolve(__dirname, 'input.txt'));
|
let input = readFile(path.resolve(__dirname, 'input.txt'));
|
||||||
|
|
||||||
const day1 = input.split("\n").map(line => {
|
const day1 = input.split("\n")
|
||||||
const first = line.substring(0, line.length / 2).split('')
|
.map(line => {
|
||||||
const second = line.substring(line.length / 2).split('')
|
const first = line.substring(0, line.length / 2).split('')
|
||||||
|
const second = line.substring(line.length / 2).split('')
|
||||||
|
|
||||||
const both = first.filter(ch => second.includes(ch))[0];
|
const both = first.filter(ch => second.includes(ch))[0];
|
||||||
const ascii = both.charCodeAt(0);
|
const ascii = both.charCodeAt(0);
|
||||||
return ascii > 96 ? ascii - 96 : (ascii - 64 + 26);
|
return ascii > 96 ? ascii - 96 : (ascii - 64 + 26);
|
||||||
}).reduce(sum);
|
}).reduce(sum);
|
||||||
|
|
||||||
console.log(" Day1:", day1)
|
console.log("Day1:", day1)
|
||||||
|
|
||||||
|
|
||||||
const day2 = input;
|
const day2 = input.split("\n")
|
||||||
|
.reduce((a, b, c) => {
|
||||||
|
if (c % 3 === 0) a.push([]);
|
||||||
|
a[a.length - 1].push(b);
|
||||||
|
return a;
|
||||||
|
}, []).map(group => {
|
||||||
|
const badge = group[0].split('').filter(ch => group[1].includes(ch) && group[2].includes(ch))[0];
|
||||||
|
const ascii = badge.charCodeAt(0);
|
||||||
|
return ascii > 96 ? ascii - 96 : (ascii - 64 + 26);
|
||||||
|
}).reduce(sum);
|
||||||
|
|
||||||
console.log("Day2:", day2);
|
console.log("Day2:", day2);
|
||||||
Reference in New Issue
Block a user