From b69c454c4ca1e306fc833feb8cd4920a0b61ca0b Mon Sep 17 00:00:00 2001 From: Eric Wagoner Date: Fri, 9 Dec 2022 18:25:38 -0500 Subject: [PATCH] answers for day 9 --- 09/code.js | 132 ++++ 09/input.txt | 2000 +++++++++++++++++++++++++++++++++++++++++++++++++ 09/sample.txt | 8 + 3 files changed, 2140 insertions(+) create mode 100644 09/code.js create mode 100644 09/input.txt create mode 100644 09/sample.txt diff --git a/09/code.js b/09/code.js new file mode 100644 index 0000000..8b3a42b --- /dev/null +++ b/09/code.js @@ -0,0 +1,132 @@ +const fs = require('fs'); + +//const inputArray = fs.readFileSync('sample.txt').toString().split("\n"); +const inputArray = fs.readFileSync('input.txt').toString().split("\n"); + +// Part One + +const head = [[0, 0]]; +const tail = [[0, 0]]; + +for (i in inputArray) { + const contents = inputArray[i].split(" "); + const dir = contents[0]; + const dist = contents[1]; + + for (m = 1; m <= dist; m++) { + let hx = head[0][0]; + let hy = head[0][1]; + let tx = tail[0][0]; + let ty = tail[0][1]; + + if (dir === 'U') { + hy++; + } else if (dir === "D") { + hy--; + } else if (dir === "L") { + hx--; + } else if (dir === "R") { + hx++; + } + + head.unshift([hx, hy]); + tail.unshift(walk(hx, hy, tx, ty)); + } +} + +let strings = []; +for (pos of tail) { + strings.push(pos.join('-')); +} +let touched = [...new Set(strings)]; + +console.log(touched.length); + +// Part Two + +const h = [[0, 0]]; +const one = [[0, 0]]; +const two = [[0, 0]]; +const three = [[0, 0]]; +const four = [[0, 0]]; +const five = [[0, 0]]; +const six = [[0, 0]]; +const seven = [[0, 0]]; +const eight = [[0, 0]]; +const t = [[0, 0]]; + +for (i in inputArray) { + const contents = inputArray[i].split(" "); + const dir = contents[0]; + const dist = contents[1]; + + for (m = 1; m <= dist; m++) { + let hx = h[0][0]; + let hy = h[0][1]; + + if (dir === 'U') { + hy++; + } else if (dir === "D") { + hy--; + } else if (dir === "L") { + hx--; + } else if (dir === "R") { + hx++; + } + + h.unshift([hx, hy]); + one.unshift(walk(hx, hy, one[0][0], one[0][1])); + two.unshift(walk(one[0][0], one[0][1], two[0][0], two[0][1])); + three.unshift(walk(two[0][0], two[0][1], three[0][0], three[0][1])); + four.unshift(walk(three[0][0], three[0][1], four[0][0], four[0][1])); + five.unshift(walk(four[0][0], four[0][1], five[0][0], five[0][1])); + six.unshift(walk(five[0][0], five[0][1], six[0][0], six[0][1])); + seven.unshift(walk(six[0][0], six[0][1], seven[0][0], seven[0][1])); + eight.unshift(walk(seven[0][0], seven[0][1], eight[0][0], eight[0][1])); + t.unshift(walk(eight[0][0], eight[0][1], t[0][0], t[0][1])); + } +} + +strings = []; +for (pos of t) { + strings.push(pos.join('-')); +} +touched = [...new Set(strings)]; + +console.log(touched.length); + +// functions + +function walk(hx, hy, tx, ty) { + if ((hx > tx) && Math.abs(hx - tx) >= 2) { + tx++; + if (hy > ty) { + ty++; + } else if (ty > hy) { + ty--; + } + } else if ((tx > hx) && Math.abs(tx - hx) >= 2) { + tx--; + if (hy > ty) { + ty++; + } else if (ty > hy) { + ty--; + } + } else if ((hy > ty) && Math.abs(hy - ty) >= 2) { + ty++; + if (hx > tx) { + tx++; + } else if (tx > hx) { + tx--; + } + } else if ((ty > hy) && Math.abs(ty - hy) >= 2) { + ty--; + if (hx > tx) { + tx++; + } else if (tx > hx) { + tx--; + } + } + + return [tx, ty] +} \ No newline at end of file diff --git a/09/input.txt b/09/input.txt new file mode 100644 index 0000000..18454b1 --- /dev/null +++ b/09/input.txt @@ -0,0 +1,2000 @@ +D 1 +L 2 +D 2 +L 1 +R 1 +D 1 +R 2 +U 1 +R 1 +D 2 +R 1 +L 2 +U 1 +D 2 +R 1 +L 2 +R 1 +U 2 +D 2 +L 1 +U 2 +R 2 +D 1 +R 2 +D 1 +U 2 +D 2 +L 1 +U 1 +R 1 +D 1 +U 1 +D 1 +U 2 +L 2 +R 1 +U 1 +R 2 +L 2 +U 2 +R 1 +L 1 +U 1 +L 2 +R 1 +D 1 +L 1 +D 2 +U 1 +D 1 +R 1 +L 2 +D 1 +R 2 +L 2 +U 1 +D 2 +R 2 +D 1 +U 1 +R 2 +D 1 +L 1 +U 2 +R 2 +D 1 +U 2 +R 1 +D 2 +R 1 +D 1 +U 2 +R 2 +U 1 +R 1 +U 1 +L 1 +U 2 +D 1 +R 2 +D 2 +R 2 +D 1 +L 2 +D 2 +L 1 +R 1 +U 1 +D 2 +L 2 +D 2 +L 1 +D 2 +R 1 +D 1 +R 2 +L 2 +R 2 +D 2 +R 1 +D 2 +R 2 +U 2 +L 2 +R 1 +U 1 +R 1 +U 1 +D 1 +U 1 +R 2 +L 1 +R 1 +D 2 +U 3 +R 1 +L 2 +D 1 +R 3 +U 1 +D 2 +R 1 +D 1 +R 2 +L 1 +R 2 +L 2 +D 3 +R 3 +D 1 +U 2 +D 2 +R 1 +D 2 +R 1 +L 3 +D 1 +L 1 +R 2 +D 3 +R 2 +D 3 +R 3 +L 2 +U 3 +D 3 +L 2 +R 3 +L 1 +U 1 +L 2 +D 2 +U 1 +D 2 +U 1 +D 2 +R 1 +U 1 +D 2 +U 1 +L 1 +R 2 +L 2 +D 3 +U 2 +L 3 +D 2 +U 1 +D 3 +L 1 +U 1 +D 2 +R 2 +U 1 +L 2 +D 3 +L 3 +D 3 +U 1 +R 1 +U 2 +D 1 +R 3 +L 1 +D 1 +U 3 +D 1 +L 2 +U 1 +L 3 +D 2 +L 2 +R 1 +L 3 +U 3 +R 3 +U 1 +R 2 +D 1 +L 3 +U 3 +D 3 +L 2 +D 1 +U 2 +D 2 +U 2 +R 3 +U 2 +L 1 +U 1 +R 2 +L 3 +D 3 +U 3 +R 1 +L 1 +U 1 +D 1 +U 2 +R 1 +D 3 +L 1 +R 3 +L 4 +D 3 +R 2 +U 3 +R 1 +L 4 +R 1 +L 3 +R 3 +U 2 +D 1 +L 3 +D 4 +U 4 +L 3 +U 4 +R 4 +L 1 +R 4 +D 1 +R 1 +L 3 +R 3 +L 1 +R 4 +D 2 +L 3 +D 2 +U 1 +R 3 +D 2 +L 3 +R 4 +L 3 +U 3 +D 3 +R 1 +D 2 +U 4 +L 1 +R 1 +L 4 +R 3 +U 1 +L 4 +R 1 +U 3 +R 1 +L 1 +U 3 +R 3 +U 2 +R 2 +L 4 +U 1 +R 1 +D 3 +L 2 +D 1 +L 3 +R 3 +D 3 +L 4 +U 2 +L 3 +U 4 +L 2 +U 2 +D 4 +L 3 +D 1 +U 2 +L 3 +R 4 +U 1 +L 4 +R 4 +L 3 +U 2 +D 4 +L 1 +R 3 +D 2 +L 3 +U 1 +L 3 +U 4 +R 2 +U 2 +R 1 +D 2 +L 4 +R 3 +D 2 +L 3 +U 3 +D 3 +L 1 +D 4 +R 3 +U 1 +R 3 +L 1 +U 3 +R 2 +D 3 +L 3 +U 3 +L 3 +D 5 +U 4 +L 5 +D 2 +R 1 +D 2 +U 5 +R 1 +U 2 +D 2 +R 4 +U 2 +L 3 +U 2 +R 5 +D 4 +L 3 +U 3 +D 1 +R 2 +L 3 +U 1 +R 5 +D 1 +U 2 +R 1 +U 3 +L 2 +U 5 +R 4 +D 5 +L 4 +D 4 +L 2 +U 4 +R 5 +L 1 +D 1 +R 2 +U 2 +D 5 +R 2 +U 4 +L 3 +D 2 +R 4 +L 1 +R 1 +L 2 +U 4 +D 4 +R 5 +D 3 +R 1 +D 4 +L 4 +U 5 +L 2 +U 2 +L 3 +R 4 +U 5 +L 4 +U 2 +D 1 +R 2 +U 4 +L 1 +U 3 +R 1 +U 5 +D 5 +U 4 +D 3 +L 3 +U 3 +D 2 +U 4 +R 3 +D 1 +U 5 +D 3 +R 1 +U 2 +R 1 +D 4 +R 4 +L 4 +U 1 +L 5 +R 3 +D 2 +U 2 +L 5 +R 1 +L 1 +U 3 +D 4 +R 5 +L 4 +D 5 +L 2 +U 1 +D 1 +U 3 +R 4 +D 4 +L 4 +U 3 +L 2 +D 2 +L 5 +U 1 +R 6 +U 4 +R 3 +D 2 +R 6 +D 2 +R 6 +L 3 +R 4 +L 3 +D 5 +U 2 +R 5 +L 5 +R 4 +U 6 +R 6 +D 1 +U 4 +D 4 +L 3 +D 2 +U 5 +R 2 +U 5 +D 2 +U 3 +R 2 +D 5 +R 2 +D 6 +R 1 +U 5 +D 2 +L 6 +U 2 +L 4 +R 6 +L 6 +D 6 +L 3 +D 5 +L 1 +R 5 +D 4 +L 4 +U 1 +R 3 +D 6 +R 6 +U 2 +R 4 +D 1 +R 4 +U 4 +L 6 +U 6 +D 6 +R 2 +D 2 +L 4 +R 6 +L 1 +U 5 +D 4 +U 4 +R 3 +U 1 +D 3 +R 6 +D 4 +U 5 +R 3 +D 5 +R 5 +D 4 +U 4 +D 3 +U 6 +L 1 +D 4 +U 6 +L 3 +R 3 +D 6 +U 4 +R 3 +L 3 +R 1 +D 6 +R 4 +U 2 +R 6 +L 3 +D 3 +L 4 +R 3 +L 4 +R 3 +U 4 +R 3 +D 4 +R 6 +D 2 +U 1 +D 2 +L 3 +D 4 +L 1 +D 5 +L 6 +U 4 +L 7 +R 6 +U 7 +R 7 +L 5 +D 1 +U 3 +R 6 +U 6 +R 2 +U 5 +R 4 +U 7 +R 1 +L 3 +D 7 +L 4 +D 6 +U 1 +L 1 +R 3 +D 2 +L 5 +R 1 +U 1 +L 1 +R 6 +L 6 +D 2 +U 3 +L 6 +R 6 +L 3 +D 3 +R 2 +L 1 +U 5 +R 6 +D 2 +L 5 +U 1 +D 4 +R 3 +L 6 +R 2 +L 4 +D 4 +R 5 +D 3 +R 2 +L 5 +U 7 +D 5 +L 3 +R 2 +D 5 +U 5 +D 2 +U 2 +L 2 +R 5 +L 2 +D 5 +R 3 +U 4 +R 4 +D 1 +L 6 +U 2 +R 7 +L 3 +U 4 +D 2 +R 5 +L 6 +R 7 +L 1 +U 5 +L 3 +U 7 +D 6 +R 3 +D 3 +U 7 +L 4 +R 2 +U 1 +L 1 +R 6 +D 5 +R 7 +U 4 +D 2 +R 2 +D 4 +L 1 +U 4 +D 2 +R 2 +D 5 +U 7 +D 1 +U 7 +R 3 +U 5 +L 1 +R 7 +L 2 +R 5 +U 5 +R 5 +D 4 +U 5 +L 7 +D 3 +R 5 +L 3 +R 1 +U 8 +L 4 +U 3 +D 4 +U 1 +L 2 +D 5 +L 5 +D 4 +U 3 +L 2 +R 3 +D 6 +L 4 +U 3 +R 1 +U 1 +D 3 +R 5 +D 4 +L 7 +U 7 +R 7 +L 6 +D 7 +U 5 +L 2 +U 4 +R 8 +L 4 +U 4 +R 5 +U 1 +R 1 +D 7 +R 6 +L 8 +R 1 +D 4 +U 5 +R 6 +L 3 +R 7 +L 4 +D 7 +U 8 +R 5 +D 5 +U 4 +L 3 +D 4 +U 1 +L 8 +R 8 +U 2 +L 5 +R 7 +D 5 +L 5 +D 3 +L 5 +U 4 +D 1 +U 6 +R 7 +D 5 +R 4 +D 6 +U 4 +L 5 +D 8 +U 5 +L 7 +D 1 +U 8 +R 3 +U 4 +R 5 +U 7 +R 6 +L 3 +U 4 +L 7 +R 5 +U 6 +L 2 +R 2 +U 7 +R 4 +D 2 +L 2 +D 6 +L 5 +D 5 +L 1 +R 5 +D 1 +U 5 +L 8 +R 3 +D 4 +R 2 +U 2 +L 5 +D 4 +U 7 +D 9 +R 9 +U 9 +R 3 +L 2 +D 8 +U 6 +L 1 +R 1 +D 4 +L 9 +R 9 +L 3 +U 4 +D 7 +U 9 +D 5 +R 8 +D 6 +R 9 +U 2 +R 2 +U 8 +R 5 +U 6 +L 8 +D 7 +L 2 +U 3 +R 3 +U 6 +L 5 +R 4 +D 6 +U 6 +R 6 +D 5 +U 5 +D 6 +L 4 +D 2 +U 6 +L 8 +U 3 +D 6 +U 1 +L 7 +D 6 +R 3 +D 7 +U 6 +D 4 +U 5 +R 3 +D 7 +L 5 +U 6 +L 6 +R 2 +D 7 +L 7 +U 5 +D 9 +R 6 +L 9 +R 1 +L 6 +U 5 +R 4 +U 7 +L 2 +U 5 +L 9 +U 3 +R 2 +L 5 +R 2 +U 6 +L 3 +D 7 +R 9 +D 3 +L 4 +R 2 +D 8 +L 6 +D 9 +L 5 +D 1 +R 8 +D 4 +U 5 +L 7 +D 2 +R 2 +L 7 +D 6 +L 7 +R 1 +D 4 +U 3 +D 3 +U 8 +R 8 +L 3 +D 8 +U 7 +R 4 +D 9 +L 3 +U 10 +L 4 +D 4 +R 7 +U 1 +L 10 +U 10 +R 9 +U 3 +L 3 +R 1 +D 10 +L 4 +U 9 +L 4 +U 7 +L 8 +R 7 +D 1 +U 3 +L 3 +U 2 +R 4 +U 5 +D 9 +L 5 +U 10 +L 2 +U 1 +L 7 +D 9 +L 8 +R 10 +D 7 +U 9 +L 4 +U 10 +L 3 +U 1 +D 1 +L 1 +D 6 +U 8 +R 8 +L 6 +U 9 +L 3 +U 6 +R 6 +U 3 +R 7 +U 2 +D 4 +L 4 +R 8 +D 3 +R 8 +U 2 +R 3 +D 6 +U 4 +R 9 +L 4 +D 4 +L 6 +R 2 +D 10 +L 7 +R 9 +L 7 +D 8 +R 2 +D 2 +U 9 +R 2 +U 1 +R 10 +U 1 +D 2 +U 10 +D 10 +U 5 +R 3 +U 5 +R 10 +L 3 +R 5 +U 5 +L 4 +D 3 +L 7 +D 3 +U 10 +R 7 +L 3 +D 2 +L 1 +D 1 +L 7 +R 2 +L 10 +D 6 +R 4 +L 8 +R 9 +D 5 +L 2 +D 4 +R 1 +L 4 +R 8 +D 5 +R 10 +D 1 +L 10 +D 11 +L 10 +R 4 +L 3 +D 1 +U 4 +L 9 +D 6 +U 2 +R 4 +L 2 +U 5 +D 1 +R 6 +L 5 +U 7 +D 2 +R 5 +D 9 +R 11 +U 9 +D 9 +R 2 +L 9 +D 4 +U 7 +L 10 +D 7 +U 4 +D 1 +U 4 +D 10 +L 8 +D 3 +L 8 +D 8 +R 7 +D 10 +R 5 +U 1 +L 11 +D 2 +L 11 +U 4 +L 8 +D 10 +U 3 +D 11 +R 10 +L 1 +D 2 +U 11 +L 4 +U 2 +L 6 +D 7 +R 10 +L 2 +D 7 +R 9 +U 6 +D 5 +R 9 +U 1 +D 3 +R 8 +D 7 +L 3 +D 8 +U 4 +D 4 +R 8 +L 7 +R 1 +D 3 +U 7 +D 4 +L 10 +R 1 +D 6 +R 1 +L 5 +D 2 +L 9 +R 1 +U 5 +D 4 +U 11 +L 6 +R 11 +D 11 +R 6 +U 9 +R 1 +L 5 +U 3 +R 10 +L 8 +R 6 +L 2 +R 8 +D 11 +L 5 +R 3 +L 1 +R 3 +L 8 +R 10 +U 2 +R 2 +D 7 +L 9 +U 2 +L 8 +D 3 +U 1 +L 11 +D 1 +U 6 +L 2 +R 7 +D 5 +R 1 +D 11 +U 12 +D 10 +L 11 +U 3 +D 10 +L 6 +U 3 +D 12 +R 4 +D 9 +R 2 +U 12 +R 11 +L 2 +R 7 +L 11 +U 12 +R 12 +U 1 +R 2 +D 8 +R 10 +U 2 +D 8 +U 8 +D 5 +U 10 +R 4 +U 8 +D 4 +R 8 +D 8 +R 2 +U 4 +L 10 +D 2 +L 10 +R 2 +D 9 +U 6 +L 2 +D 10 +L 2 +D 11 +R 11 +U 2 +L 6 +D 3 +U 3 +R 4 +U 9 +L 9 +R 8 +D 5 +L 9 +U 8 +L 11 +D 8 +R 12 +U 1 +D 1 +U 7 +L 11 +U 2 +L 12 +R 11 +U 8 +R 12 +U 11 +L 7 +U 5 +L 4 +R 4 +D 1 +U 6 +D 7 +U 5 +R 5 +U 10 +D 2 +R 9 +L 12 +D 9 +U 6 +L 11 +D 7 +L 6 +D 10 +L 9 +D 11 +R 7 +D 10 +L 1 +R 9 +D 10 +L 1 +U 1 +L 13 +R 10 +D 9 +L 9 +U 7 +L 10 +R 1 +U 12 +R 13 +U 8 +L 9 +U 5 +L 11 +D 11 +U 8 +R 2 +D 2 +R 7 +D 3 +L 3 +R 2 +L 6 +U 11 +L 6 +U 8 +L 11 +U 12 +L 13 +D 4 +L 8 +U 11 +D 9 +U 11 +D 10 +U 4 +D 9 +L 12 +D 6 +L 11 +U 11 +L 1 +D 6 +R 12 +U 9 +D 1 +L 4 +R 9 +L 13 +R 10 +D 9 +L 2 +R 3 +D 10 +L 13 +R 3 +L 8 +R 8 +L 1 +R 5 +L 12 +D 10 +R 6 +U 7 +R 11 +U 11 +R 10 +D 9 +R 12 +D 8 +U 6 +L 8 +D 6 +L 10 +R 2 +L 2 +D 12 +U 12 +R 11 +L 8 +U 2 +R 2 +L 11 +U 11 +L 7 +D 2 +U 2 +L 9 +D 4 +R 2 +U 7 +D 3 +R 1 +D 6 +U 13 +R 11 +D 1 +U 4 +R 9 +D 7 +L 12 +U 12 +L 10 +U 9 +L 1 +D 1 +U 6 +L 1 +D 13 +U 14 +L 2 +D 6 +U 8 +D 8 +L 9 +D 1 +R 11 +D 6 +L 8 +R 11 +U 4 +L 5 +R 5 +D 10 +U 10 +R 7 +D 7 +L 8 +U 9 +R 1 +L 5 +D 4 +L 13 +D 4 +R 14 +D 13 +R 9 +L 13 +R 7 +L 14 +R 12 +D 1 +U 8 +L 10 +U 7 +D 9 +U 7 +D 13 +L 1 +R 1 +D 14 +L 9 +U 5 +R 7 +U 2 +L 11 +D 5 +U 7 +D 1 +L 13 +U 14 +L 1 +D 3 +R 3 +D 1 +L 3 +U 4 +R 14 +U 11 +R 4 +L 13 +U 3 +R 8 +D 5 +U 8 +L 6 +R 14 +L 3 +D 2 +L 5 +U 11 +R 8 +L 11 +U 8 +D 11 +U 14 +R 14 +L 4 +D 10 +R 11 +U 1 +D 4 +U 11 +D 5 +L 5 +R 14 +U 12 +L 1 +D 4 +R 11 +L 5 +R 9 +U 9 +D 2 +U 12 +D 2 +R 8 +U 6 +L 11 +U 8 +L 6 +U 9 +L 5 +U 3 +D 10 +R 10 +D 6 +U 1 +R 13 +U 5 +R 8 +U 11 +L 11 +D 10 +R 11 +U 2 +D 3 +R 10 +D 2 +L 9 +R 7 +L 8 +U 1 +R 6 +L 3 +D 10 +U 14 +D 4 +U 7 +L 6 +R 8 +U 15 +D 14 +U 5 +D 15 +U 2 +D 4 +L 11 +U 8 +L 10 +U 15 +R 8 +U 14 +D 6 +R 9 +L 15 +R 9 +L 11 +R 3 +D 2 +U 10 +L 12 +D 2 +L 5 +D 1 +R 8 +U 7 +L 7 +D 7 +L 15 +D 11 +U 3 +L 4 +U 10 +L 14 +U 10 +D 10 +U 11 +D 1 +L 3 +R 11 +L 3 +U 10 +L 2 +D 8 +R 8 +L 12 +D 15 +U 10 +L 14 +R 4 +L 9 +R 11 +U 10 +R 7 +D 13 +U 11 +D 10 +R 3 +U 6 +R 9 +L 15 +R 11 +D 6 +R 14 +L 7 +D 7 +L 3 +D 13 +U 10 +R 14 +U 2 +D 4 +U 1 +R 1 +D 8 +R 12 +L 15 +R 4 +L 15 +U 13 +D 12 +L 8 +D 1 +R 3 +U 11 +R 3 +U 2 +R 4 +D 15 +U 4 +L 6 +D 6 +L 9 +D 2 +L 15 +R 5 +U 2 +R 7 +D 7 +U 15 +L 4 +D 7 +R 9 +D 11 +R 8 +L 4 +R 6 +L 11 +U 16 +L 10 +U 10 +L 11 +U 9 +R 8 +U 13 +R 13 +L 5 +R 8 +L 12 +U 11 +L 4 +D 10 +R 2 +U 13 +R 4 +L 15 +D 15 +L 15 +R 16 +L 7 +R 14 +D 5 +L 16 +U 6 +D 3 +L 13 +D 8 +L 11 +U 13 +L 9 +U 6 +L 4 +U 11 +R 1 +L 13 +R 11 +L 13 +R 13 +L 9 +D 15 +R 1 +L 15 +R 14 +L 14 +U 7 +L 1 +R 6 +D 16 +L 2 +R 12 +L 4 +D 12 +R 8 +U 9 +D 10 +R 1 +L 2 +D 5 +L 3 +R 15 +L 8 +D 1 +L 1 +D 8 +U 13 +R 1 +L 2 +D 1 +R 3 +L 6 +U 12 +L 4 +D 13 +U 2 +L 4 +D 10 +R 16 +D 1 +U 1 +L 11 +D 8 +L 12 +R 8 +L 5 +R 1 +D 12 +R 2 +D 7 +U 16 +D 11 +L 15 +R 4 +U 4 +D 4 +U 4 +L 17 +U 3 +D 8 +U 1 +L 1 +U 4 +L 7 +U 9 +L 13 +D 10 +L 2 +U 7 +L 13 +D 16 +U 6 +L 10 +D 16 +L 8 +U 10 +L 6 +U 16 +L 5 +U 4 +R 9 +D 12 +R 1 +U 14 +L 14 +R 16 +D 5 +L 16 +R 14 +U 10 +R 4 +U 9 +L 15 +D 4 +U 15 +L 11 +R 14 +L 10 +D 14 +L 10 +D 12 +R 2 +D 3 +R 1 +U 1 +L 17 +U 9 +D 13 +R 7 +D 7 +U 13 +D 1 +R 14 +U 10 +R 16 +L 17 +R 7 +D 17 +U 11 +L 2 +U 16 +L 8 +U 13 +R 17 +U 5 +L 7 +R 3 +D 17 +L 10 +U 9 +D 16 +R 3 +U 5 +L 15 +R 16 +D 11 +U 9 +L 3 +R 14 +D 4 +L 4 +U 12 +D 9 +U 10 +D 15 +L 12 +R 6 +D 4 +L 14 +D 5 +L 4 +U 7 +R 15 +D 6 +L 15 +U 14 +D 10 +L 3 +D 9 +L 15 +R 9 +U 1 +L 4 +D 15 +U 12 +D 9 +R 8 +D 14 +R 15 +D 7 +U 18 +L 5 +U 6 +L 6 +D 10 +L 18 +R 3 +L 11 +D 10 +L 13 +U 13 +L 13 +R 3 +L 1 +U 3 +D 7 +L 9 +R 6 +U 18 +R 18 +U 15 +R 9 +U 4 +R 12 +L 12 +D 6 +U 10 +D 13 +L 6 +R 13 +L 13 +D 12 +U 4 +D 15 +L 12 +D 10 +U 12 +R 8 +L 13 +D 11 +L 13 +U 12 +D 5 +U 12 +R 10 +L 9 +U 13 +R 7 +D 2 +L 6 +U 13 +D 15 +R 3 +U 4 +D 5 +L 2 +D 10 +U 7 +L 2 +D 5 +L 5 +D 11 +R 5 +U 18 +L 9 +D 8 +U 12 +R 3 +U 8 +R 14 +D 1 +R 4 +L 5 +D 10 +R 18 +D 2 +R 9 +L 14 +U 4 +R 15 +D 4 +R 2 +L 4 +U 13 +R 6 +U 18 +D 4 +U 7 +L 15 +D 1 +L 6 +D 3 +U 15 +L 17 +U 15 +R 14 +L 9 +U 5 +L 4 +U 13 +R 5 +D 17 +U 17 +L 15 +U 14 +R 5 +L 1 +R 9 +U 8 +R 15 +U 18 +L 12 +R 13 +D 15 +R 5 +L 11 +R 5 +U 12 +R 8 +L 6 +R 1 +L 10 +U 17 +L 16 +U 12 +L 14 +D 16 +U 13 +D 18 +L 5 +U 16 +L 11 +D 15 +U 2 +L 9 +D 5 +L 17 +D 17 +L 4 +D 4 +L 19 +R 6 +D 6 +U 18 +R 16 +U 12 +D 2 +L 4 +U 19 +R 6 +U 1 +D 15 +R 13 +U 18 +D 12 +L 9 +U 1 +R 13 +D 18 +L 4 +D 17 +L 9 +D 8 +U 3 +D 5 +R 7 +L 16 +U 3 +L 1 +D 13 +R 17 +D 8 +R 9 +U 17 +L 2 +U 17 +D 16 +L 8 +R 9 +D 7 +L 16 +R 10 +L 16 +D 10 +L 15 +U 17 +L 2 +U 10 +D 16 +R 1 +L 2 +D 4 +R 13 +L 12 +D 8 +U 10 +L 6 +D 14 +L 6 +D 11 +R 1 +D 10 +L 18 +D 12 +R 14 +L 3 +D 7 +L 12 +R 19 +U 5 +R 19 +D 3 +L 15 +U 13 \ No newline at end of file diff --git a/09/sample.txt b/09/sample.txt new file mode 100644 index 0000000..c1eba0a --- /dev/null +++ b/09/sample.txt @@ -0,0 +1,8 @@ +R 5 +U 8 +L 8 +D 3 +R 17 +D 10 +L 25 +U 20 \ No newline at end of file