Guest User

AdventOfCode: Day 4 - Part 2

a guest
Dec 4th, 2020
531
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. let raw = `...`;
  2. let fields = [
  3.   /^byr:(19[2-9]\d|200[0-2])$/,
  4.   /^iyr:(20[1]\d|2020)$/,
  5.   /^eyr:(20[2]\d|2030)$/,
  6.   /^hgt:((1([5-8]\d|9[0-3])cm)|(([5-6]\d|7[0-6])in))$/,
  7.   /^hcl:#[a-fA-F0-9]{6}$/,
  8.   /^ecl:(amb|blu|brn|gry|grn|hzl|oth)$/,
  9.   /^pid:[0]*\d{9}$/,
  10. ];
  11.  
  12. let passports = raw.split(/\n\n/).map(a => a.split(/\s/));
  13. let valid = passports.filter(b =>
  14.     b.filter(a =>
  15.         fields.filter(x => a.match(x)).length,
  16.     ).length === 7,
  17. ).length;
  18. console.log(valid);
Advertisement
Add Comment
Please, Sign In to add comment