jsadvent/solutions/2019/4.js

23 lines
547 B
JavaScript
Raw Normal View History

2020-12-10 08:33:00 +00:00
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,
};