#!/bin/node const fs = require('fs'); fs.readFile('input.txt', (err, data) => { const groups = data.toString() .split('\n\n') .map(group => group.split('\n') .filter(person => person.length > 0)); let q1 = 0; let q2 = 0; for (const group of groups) { let q1Questions = []; let q2Questions = []; for (const person of group) { for (const question of person) { if (q1Questions.indexOf(question) < 0) { q1Questions.push(question); } if (q2Questions.indexOf(question) < 0 && group.every(person => person.indexOf(question) >= 0)) { q2Questions.push(question); } } } q1 += q1Questions.length; q2 += q2Questions.length; } console.log(q1, q2); });