const fs = require('fs'); const readline = require('readline'); function letterToPriority(c) { let charCode = c.charCodeAt(0); const A = 65, Z=90, a=97, z=122; return charCode >= a && charCode <= z ? (charCode-a+1) : (charCode-A+27); } async function main() { let sum =0; let sumPart2 =0; let bufferOf3 = []; for await (let line of readline.createInterface({ input: process.stdin })) { if (!line || !line.length) continue; let compartments = []; let tmp = []; bufferOf3.push(line.split("").map(i => letterToPriority(i))); compartments.push(line.slice(0, line.length /2)); compartments.push(line.slice(line.length /2)); compartments = compartments.map(i=>i.split("").map(i => letterToPriority(i))) let matches = compartments[0].filter(i => { let result = compartments[1].includes(i) && !tmp.includes(i); tmp.push(i); return result; }); matches.forEach(i => sum += i); if (bufferOf3.length === 3) { tmp = []; let onlyOne = bufferOf3[0].filter(i => { let result = bufferOf3[1].includes(i) && bufferOf3[2].includes(i) && !tmp.includes(i); tmp.push(i); return result; }); sumPart2 += onlyOne[0]; bufferOf3 = []; } } console.log(sum); console.log(sumPart2); }; (main());