This commit is contained in:
2020-12-08 16:19:49 +00:00
parent 4d2dec6e56
commit 7f2b425726
3 changed files with 745 additions and 0 deletions

38
08/part1.js Normal file
View File

@@ -0,0 +1,38 @@
const fs = require('fs');
function parseLine(line) {
let [ op, offset ] = line.split(' ');
return { op: op, offset: Number(offset), visited: false };
}
fs.readFile('input', (err, data) => {
if (err) throw err;
let program = data.toString().split("\n").map( parseLine ).flat();
let acc = 0;
let pc = 0;
while (true) {
let insn = program[pc];
if (insn.visited) {
console.log(acc);
break;
}
insn.visited = true;
switch (insn.op) {
case 'nop':
pc++;
break;
case 'jmp':
pc = pc + insn.offset;
break;
case 'acc':
acc = acc + insn.offset;
pc++;
break;
}
}
});