all done
This commit is contained in:
36
day25/part1.js
Normal file
36
day25/part1.js
Normal file
@ -0,0 +1,36 @@
|
||||
var state = "A";
|
||||
var tape = {};
|
||||
var pointer = 0;
|
||||
var actions = {
|
||||
A: [
|
||||
[1, 1, "B"], [0, -1, "B"]
|
||||
],
|
||||
B: [
|
||||
[0, 1, "C"], [1, -1, "B"]
|
||||
],
|
||||
C: [
|
||||
[1, 1, "D"], [0, -1, "A"]
|
||||
],
|
||||
D: [
|
||||
[1, -1, "E"], [1, -1, "F"]
|
||||
],
|
||||
E: [
|
||||
[1, -1, "A"], [0, -1, "D"]
|
||||
],
|
||||
F: [
|
||||
[1, 1, "A"], [1, -1, "E"]
|
||||
],
|
||||
}
|
||||
aactions = {
|
||||
A: [[1,1,"B"],[0,-1,"B"]],
|
||||
B: [[1,-1,"A"],[1,1,"A"]],
|
||||
}
|
||||
for(var i = 0; i < 12629077; i++){
|
||||
var action = actions[state][tape[pointer] ? 1 : 0];
|
||||
//console.log(state, pointer, tape);
|
||||
tape[pointer] = action[0];
|
||||
pointer += action[1];
|
||||
state = action[2];
|
||||
}
|
||||
console.log(tape);
|
||||
console.log(Object.keys(tape).map(a=>(tape[a])).reduce((a,b)=>(a+b)));
|
Reference in New Issue
Block a user