jsadvent/solutions/2019/4.js
2020-12-10 02:33:00 -06:00

23 lines
547 B
JavaScript

const { Glib } = require('../../lib');
const fuelFor = (mass) => mass / 3n - 2n;
const parse = (input) =>
Glib.fromSequence(...Glib.fromSplit(input, '-').toInts())
.map((number) => number.toString(10))
.filter(
(password) =>
password.match(/(\d)\1/) &&
password
.split('')
.sort()
.join('') === password,
);
module.exports = {
'1': (input) => parse(input).length,
2: (input) =>
parse(input).filter((i) => i.characterFrequencies.glibValues.set.has(2n))
.length,
};