From 3b686f475996f8c58676514ec303048602a892fa Mon Sep 17 00:00:00 2001 From: TimStallard Date: Sat, 9 Dec 2017 14:12:59 +0000 Subject: [PATCH] day 9 --- day09/input.txt | 1 + day09/part1.js | 6 ++++++ day09/part2.js | 13 +++++++++++++ 3 files changed, 20 insertions(+) create mode 100644 day09/input.txt create mode 100644 day09/part1.js create mode 100644 day09/part2.js diff --git a/day09/input.txt b/day09/input.txt new file mode 100644 index 0000000..41e9623 --- /dev/null +++ b/day09/input.txt @@ -0,0 +1 @@ +{{{{{,{>,{<u!>eio!>ui>}},{},{{>},{{>},{'!>},,<"ea!!!>!>,<>}}}},{{{{<"a">,<<>}}}},{{{{{},{<{!!"!>!>!!!>}'!!>}},!>,,<{oiu},{<>}}}},{{{{}},{{!!a!!!}e!>},!>i!e!>,!!!>>}}}},{{{{{},},>,},<">},{}},{,eouaa"o}!!!>!>,<>}},{!!<'a!!!!!>!!!a!>},,<>}},{{{},{{{},!!!>i}}u!!!>},!ii!!'!,>},{{<{>},{,}}}},{},}}},{{{{},{},}}{'>}}},{{{{<},{a!>,<>}},{<>,}},{{{<"u!i{!i}a!!!>"'>}}}},{{{<,!!<>},'u!!ea!>u'!>}!!!!!>>},{{}},{<"i}u,,>}}}},{{{{{{<',!!,uo!,"<,{!i"{<},<},},<>},{{},{<{!!!!,!>,<,">}},{{}}},{{{{},<,}i!!,e!>,i{ou>},{{},{a"!!!>!!!>a,!!i!>,>}}},{{<{!>!>},,,{{<<>},}>}},{{<"!"a,!!!>{}!!u'u{>}}},{{},<'!><>},{i!!!>!!!oa},<>},{<}!!!!"!a,!!'!!!>>,!>},>}},{{{,},{}},{<}!!!>,!>},,{!>},!!!!!>"o!!!!!{}!o>}}},{{{<">,{}},{{{<"}!i!!oi!!!>},<''>},{}},{{,},!!>}}}}}},{},{},{{{{{}},{},<,{!!,!!{}oo!>,,<>}},{{{{},"!iii!>,<{!>},<>},{},,{!>,}}},{{<"!!!>!>},},<'>,<{a!>},},{},{{},{{!,!>},<''!!!>,{!!!>!!!>!!!>},<{,!!!!e}i!!,>},'e!u!!!>e!>u!"">}}},{{{},}},{{<<"!>!!!>e!>e!!!>!>,,{}}}}},{{{!!{}!>!>,<>},{{}}},{{ai}>}},{{,},<{!>},,<''!>,},>,{,,<}<'!o>}}}},{{{{{<>,{{,},<i!!{i}e>}}},{{ao},,a!!,!!!>!e!>u>}}},{{},{{<"{a!>}!>},<},},!>>}}},{{,!!a!!a!!!>},},{}!>,<>}}},{},'!!!><,!,!ua!!!>e!>},},<<>}},{{},{{{<{u{aie!!"!!!>a>}}}}},{{{},},},{{{}},{{{}}}},{!>},,<"!!!>!>},i!!!>o}u{!!!><{>}}},{{{},<<,!>,},<{},<"i!<'ei>,{}},{{},{!!!>>}}},{},{{{},},{<}!>,<>,{{o,a,<'}>},}},{}}}},{{{{{{!!!!>},{{},ua!!!><>}},{{}}},{{{<>},,,},{<"!o!!{!i!!!oa!!!>!><,!>>,!!,u},<{'"!>e{i'>}}},{{o!>!!!>!!a!e!},},,uaao!!!>e!ai!!!>>}}},{{{<"!u,!!!>},,,!!!>}i!!!>!!!>'>,{!!!a{o}!>>}},{},}},{},,<"!>{'ia!>{'!!!>a!!{>},{{{<}e!>},{!>}},{{{{<'!!i!!'o{,!e!!!>oi!>},!!o>}},{{<,,i!!!>!a!,{{!>,,<>}}},{{},<}}},{{}}}}},{{{!>!>},<{i!!!!oe>,{e!!<>}},{},{{{{{<"!>},},},{},<,!!u{o!e'}'!>,,,>}}},{{{'e>},,}},{}},{{}},{{},{,},,}}}},{{}},{{},uoi!}eu},!!o!>,},{{},<,!!!!!!!>!>,},{,{},},}}!!!!!>uo>}}},{{},{},!!u"!!u!>},<>}}},{{{<<{!!!!o!>,,},<'a{!i>,>},{{,},<"!>,<{{'>},{}}},{{{{{},{}},{{{{,!>!!!!!>!u<}iio"i'>}},{<}}},ioi"ua>}}},{<<}>}},{{{{}},{}},{{{{<{',!>},},>}},{}},{{},!>!>},<>}}},{{{},<'!!ao'!>,<{},<<,aeu>},{<{>}},{<},!'uoo!!o"{aii!>},<,a>},{{>},},<,!,!!!>!>,,<>}}},{{{o}i{!>},},{{<<{!>,>},<">}},{{{!>,<,!>},<<'o>},{}}}},{{o{},<,{{<,}i!>},},}}},{{<{ai!>,<'u,!!!>'!o!>,,<}ai>},,<>},{},<{!!!>>,},}}},{{},},<',ia,>,{,'i!>,},}}}}},{{{{{{{,<"!!!>!>},},{<<{>}},{<'!>!>},<>,{}}},{},{{{{{{,,},{},},},<,}},{{{},{{,i!!!>!>,!!<{>,{<},}}}}},{{},<'>,},},{{<{!>,},ia!!!,,!i"}"!!a{!!!>!!}">},{{<}!>,<,>}}}}},{{{,},<,!""a'i!}}},{}},{{{{},{{}},{{{}}}},{{{>,},!!!>,},}},{},{{},,!!!>!>u!>!!a>}}},{{}},{{{},{{<,>},}},{{{<<'"oe!!o>},{,"!"}{a>,,,},<',!!!!u!o{!o,!"a>},{{u{!!,<>,{{},"!>},!uue>}}}},{{<>,{{},{{!!!!!>},<'>},{{<{,'!!!!!>aa!!,uui}!!!>!o!!,e>}}}}},{{>}}},{{{}},{{},{<,>}}}}},{{"',!!>,},{{{},{o,!!i'ui!!!!i,a!>},<}>}},},,<,"!>},,<{!>},<,,,>}}},{{,,,,<'!>,},<>}},{{{!'!!eeu!>},},<},<'u{!!o>,{{},"!!e!>},},<>}}}},{{{>},},,<}eue!!e>},{{!>},!!!>,{o!ie!!!>>},{}}}}},{{{{},},},!>"!o,<>},<"!!!!'>},{{},<,<>}},{{{{<>}},{}},{<"!>},<}!!!!<},u,"e>}}},{{{!!!>,},,},{}},{{{}},{}},{{{!e">},{,}a<,!!!!,e!!!>>}},{},},>,}"eua!!!>!!!>i!!!>,!{!>},}}},{{{}},{}}}},{{{{{,},a{o>},{,}},{},{{{{,!!'"!>,,"a!"!>!>,<'>}},{{,e!!!!!>},!"}!i>},,,},<"!!!>">}},{!ui,e!!!>e>,},<>},{}}},{},{{{},,<'>},{},{{<!!ao!!eei!>,<>},}<}!!}},{{{},{{{<,i}aui!!}!!!>}!!{!!!>'!<'!>,<},<{>},{<">}},{,>,{,,,!!}"}>}},{{e!>},e!!,!u!!'i!!!',>},},'i!>},<,!>!'!>!!"o,}!!!!!>>}},{{'aaa>}}},{{<}!o!>},<>}},{{{<,"}ai>},{{<"!!e!!,!!e!>u!!!>!!!>,ue!!o,!>ei>},{{<>},},,<'{!!!>io}}},{{{<>},{{},{{!!!!!,!!,!!!!!>u{!!"<>,{<'eauu!!,i!!!}}},{}},{{{},},},}}},{},{<"!>{>}},{{{<au!!!!!>u!>},<,!>a>}}}}}},{{{},{}},{{!!,!>e"!>},<},<'!aeaoi>},<{o!!!!}ue!'<'!!!>!>!'a}},{{{{<'}}},{,!>},,e!>,<"!,<,!>i>,{<>}}}},{{{{{{},!>},i!>!!!>,'>},{u!ua!i>}}},{{{{},,<,!!>}},{{{{o!!,}!,>}}},!!"}!>i!>!!u!>,!!o!>},}},{{{{{,<">},{{}}}},{{{},{<"',o!>},}},{{<'>}}}},{{<>,<'!>o!>},,<{{!!!!!>i!>"'!!u>},{<"!>,<!u!!'u!!!>,!!aa!>},!!uo"{>,{},},<,uu!!!!!!,!>io{!!!!>}}}}},{{{},{}},{{,!!,!!!>eo}u!!!!!>>,!oi,!!e!!!>,<!!!>,<,!>,<'!>>},{{{},},<{ao!""!>'!>,}},{},,,{{},,<""u!!!>}!>!!,ii!!>}}}}},{{},,<",>,{iuoa!!!>!>,!!,}a'!}},{{},!>,},},{{{},{{}}},{{{<>}}}}}},{{{{{<{!>},<}u!!!!!>!'!!!>!>},<}!!!>!>},},,!>,<>},ea!!!!a}},{{{},{}}},{{},{,<>,<<>}},{{{{{{,}!eu!!!!!>,a"!!a!>ei<>,,},<"!"a>},{{{}!!!>,<}a!i>,{,!>},!!'>}}},{{<<'!!!>>},{}},{{}'!>},,<{!>,<<>},iooi!>e,{<",<>}},{{},},},ua!!!!!>au{,>},"e!>uu!>,<}>}},{{{},{{}}},{,!!">}},{{{!!!!!!!>,,<'!>},<>},{},},,<,a,iu>}}}},{{{<<<,{!>},},<},<>,u{!!"!>!!},!!!!!!ii!>{!!e{aa!>},<>}},{{<>},<,},!>ii}}},{{,{o{!>},},<>}}},{,}},{{{{},{!>},<}>,<>}}},{a!u!>,},<<}}!!!>,<'},{<"o!ii"!>,<"}!>!!{!>o,!!u!!!!!>},,<}}}},{{{<<"}'e,<}!!!!!>},<,!>,<>},<{!>!>e!!!>!!ei{!>},<{{eoao"i>},{{<{!"{!!!{!!!!!>'!eoee>},},{,{,},},<>}}},{{{!!!>!>!>},,},<>,<",''uooa!!'uo>},{{},{}}},{{,!>,<}!a!!!!eoa!!!>},},<'u}!'""!!!>},}},{{{}},{<<'}!>!!!!!>}!!!>!!!!!>i{!>,ie>}}}},{}},{},{{{{!!!!!>,<,<'>},{{}},{"!},e{,<>}},{!!}!>,<"a{a,i!,{!!>,},<},},{{{{,},{<'a,u!,>}},{{<,!!'!>},,,},},<,!>aou!!'!!!>'{!!!ea!>,<>}},{}},{{!!>}},{{{{{},},{,!!,}a!!!>>}},{<,>}}},{,{<}{'!>},>}},{,{<",!!!!!!!>!>,}}}}},{{{{},!!!!!!!>!!'io},<>,<"!!!!!!!a{!>,<>},{}},{{},},!,!!!>,<}!u,!o!!!>!!!>>}},{{,},,,<>,<<',}!,'},,<,>}}},{{},o!!!>"!!,,!!i>,{{{<"e!!!>,},a!!!a!>,<,""!>},<>,{{<},!!!>!!,<"iu>,{u>}},{},u!>}'!>},>}}},i!!i!!!>!!!!"o!!!!!!!>}ee<}!>>},{!!'>}}},{{{,'!>!>,},<'!>},!>,,<>},{}},{{{},{<',!!!>!>},!!!>o!>},}},{>},{<{"o}u},!!!>"!!>,!>,,o!!!>!!u!!!!!>!!!!!>>}},{{{<'o!,},},},,<>},{{},!>}ua!!!!>}}}},{<'!>!"!,!>,},!e!!!>>}},{{{!>},<,>},<,<<>},{{<>},{iu!!!>!>!!!!!>!a!!!>!!a!u!>>}},{<>,{{!>},,{!!i!u">}}}}}},{{{{{},<}!!!>},<{!!}eu!>},<}i,<{!!ae!a'!>},},{{<>},},},<{!!!!!!!>,{!}}">},{<{!a!>},eu!!{'!>},,{{<}!!!>!!{oi{!>},},!>,},}}},{{}e!!!>>}}},{{{{{>}},{{<"i>}}}},{{},{!!!{{!>,}},{{{},aoa!!{!>!!e!!!>!!!>}<'!!},!!e}>}}}}},{{{{{{{{"}>,{,o!>},<>}}},{{{!!e!>!!!>>}},},,<,},{{},<"{!!!!eo!!!!!>,<",e!>},{,<"!>,<>}}},{{{}},{{,,{u!>},!!uiu!>},<,},<>}},!!!!!!!>,},<}>},{{{}},{{<>},},!>},<{,}}},{{{<>},">},{{{{,e!>e}"!!ei!!!>>}}}},{<'o>,{}}},{{<,!>,<"!!a!>e!}!!!!i!>>},{{{{<>}},{{{<>}}},{!{!!{>,{}}},{{},oe!>ao>}}},{{}}}},{{{},{{{o,,>}},{{{!!'!>!<''o"{>,'"e!!'<}!!"}!>,<>},{<,}!!,!>!>!!!>}!!!>!>,}}}},{{{{<}e}!!e!!!!!>{o!!!>!>o>}},{!!!>eo!>},<>}},{{{},{,!!au!!!>,}}}},{{{},,},,},"'{i"!>,!!>},{{{{"!!!!'!!>,{>}},{}},{{{<',u!>},!>ueuo!}!!!!e>}},{}}}},{{<,!>},'>}}},{{{i"!ae!>,},}},{<,{i{!>},}}},{{{},,},<},{!!e>,<}!>,},},,{"ai"u>}}}},{{{{},{{,<{oi!iu{!!!>!!!>ea>},!>!>},}},{{{!!!>}!>,o!!!!!ia,>}},{{a!"!!{!!!>>,{{{{!!e'a,e!>,<>},},{<{a!>,<{,u!!!>i!!!>!>,<>}},{},{u>}}},{{o!>!!}!>},<"o!!eiia}>,<>}}}},{{i!>},!>!"<ao!!!>!!{!!!>!>,<>},{e{e,a'!>},<}"!!!>,,<,}>}}},{{{{{{},{{}},{{},,<>}},{{},<{!!i!!uea!>},},<>},{{{<"!>,,a,"a>},{{{},<>},!!!!>}},{{{}}},{{{<},uo{o,!!!>!!}},{,{,}},{{{},{}}}}},{{!!!>!!!>'!>!!!>!!!>'!>},,>}}},{{},,},<"!!i!>,<}!>},<}!!,!>!>},<>,,<'u!>,,a!>},<,>},{{},,o!!!>!>},},},{}}}},{{{{{",!!!"iio!!<{'}}!>,<>}},{{!!{''!"!!!!!>,,>},{uuoa'!""!>,>}},{,<>}},{{},{<<"!},},<>}},{<"!!!>}ii,<>}},{{{{<>}}},{{},iu!!!>>}}},{!},i!!!!{!">,{<,!'!!!>a!>},',!!e>}}},{{{{{o",>}}},{},},,<,>,{}},{}},{{{,<},,},{<{!>},"'>,,uu!!euueii>},{{},{e},{{},{<>}},{{',!!}"i!!!!e!>!>,<,>},{}}}}},{{{{!}!!!!ui>,{}},{{!>!>!!!>iea"!"!!!>!u>}}},{},{<,!!}!>,!>io>,{}}},{,!!!!!>{!>},<<"e!!eu!!!"!!eu>},{{!>},<{ii!>!!!>a!!!!i<},,!>>},{,{''ie!'>}}}},{{{!!}}!!!!i"i!!o}!>>},{},i'i!!!>},<<{u>}}}},{{{"!!e!>}u>}}},{{{{},{}},}},{{}}},{{},{}},{{{{!>!!,>},{{<<},{!>},},<>}}}},{{{i>}},{,!!!>{a!i},},{{},{{}}}}}},{{<>},{!>},<>,},<"!'{"!!!>!'o!!}!>,<>},{<"!>},!o{a>,{}}}},{{{i!>'a>}},{{,,{,,<'""i!!!>!>!!}e{i>,},!!"!!!>"}<{!>},<}!oe!!!>'i>}}}}},{{{{{{{},{>}},{{{{{},>}},<'<'!>a!!o{a}!!!>">},{{<}!>,<"!!!o{>},{},<"ao!>,!!!>!o!!!>a!!e,>}}},{{<>}},{<,e{>,{}}}},{{{!e!>,<<<>},<'}o}!">},{{<'a!>,>},},!>},<},},{{{{{},<'!>!!!>,!!!>,,{,<'!>,},<}>}},{<{!!!>!"!!{!>ao!>!>},,{<"!>,},<}},{{,<{,>},{},}}},{{<}!!!>},},,<,!!',>}},{{<'i!>},},,,<''o!!!e>,{{{},{{<>}}},<",>}},{{!>,,},},<{u!!i!>,<>,,}!!u!u{!!!>ai!>,<"'e!>},<>}},{},!,!!!>uau,{,<<{>}}}}},{}}},{{{},}},{},,<>,<}<,}!u!>,"o,i{!!}>}},{{{,a!!!!!a<{e!!i!!,,{>}},<>},{{},,},>},{}}}},{{{{{{},!o>}},{{}}},{{}}},{},{{{<"}}}},{},},<}}!>},},,a!>!!>},{{,<}u!>,,},,,!!!>,},<>}}},{{{<{!!ai!!<{o!!!!!!>},{{},!!u{,,<,{"e!>},<">},{,{}}},{{<,!>},<"e!!a},},<""!!!!>,{{<'u<o!>,<'>},<'{i'!!"!>,ue}<}a!!!!>}}}}},{},{{{{{{},},<"!>,eua>},<{!!!>}>}}}},{{{,<,,u!!!>ue,<{{>},{}},{{}}},{{{{<'!!!!o{!>},<,'!>,<,"oe!>},},}}},{{<{!>,,,{{},{}}},{{!>,!>},<{{!>,,{ia"!!}!>,}}}},{{{},},{!>,!>!i!>},<}!>,},{,{}},{{},!""{ei!!}e!>,,,},<<>},<'!>,a!">}}},{{,!>,,{<"!!"e{,!>e!!!!uei!!!>!!!>!!!!!>!>,}},{{{{},{{},},i'!u!>},<>},{<,!>!>ea!},e>}}},{{{<>}},{{u!!e!>},!!u!!!>},<,!>,<,i!!!>,a>}}},{{},<}}},{}},{u!!!>},,,!>},>,<{e!>{{!!!>!>i!>u!""!>,<'u<>}}},{{{{},{}},{{{,u!!!>!>,<>,{}},{!>},},}},{{'>},{<'!!e<{"!!}{o>}}},{{{{}!>!!!}'!!}!>!>},!ea>}},{{,<!!!>i<>},},{,{}}},{{{<!!}!!!!!>,},},<'!!!>!!!>,<"oa"!>},io}!>!!>},{{{{i,<,!>!!'a!>},>},{},>}},{{,,!!!>,},<'!>,!>,<}!>,<<>}},{{{!!},<>},{>}},{<,!>},<>}}},{},{{},<{!!!>iao!>e,"o!!!>!!!!!!u!>,}},{{,,,o!!{,i!!!>!!!!a!!!>},<,!!"o>},{{{}},{<"!!!!!!'u",!>uui!ai!!'>},{{,{">},{<<>}}}}},{{{},<>},{{{<}'!>,,{{{<'!>},!!!>!!<"{!!!!"a!o},},<>}},{{},{>},{},<}!!!>i{u!!!!!>!>!!>}}},{}}},{{{{!}}},{{{,,<,!!"!>},!>},<,!>,<,{!!!>o"<}!!<"!'>}}},{{}}}}},{{<"!u>}},{{{{!!!>!!!>!!!>>},{{<}<},!"a!!o>},{}}},{{{{>}},,<{u!<{!>,<"}!!!!!!!>"i!!">},,<>},{,,,,{,!!{!>},!!u,,!',!>,}}},{{{{<>}},{{{},<}!!!!!!!!o!><}!!!!!>,<,,!!oi!>,}}}}},{{{<!!!>,<>},},aoi!>,<>},{<>,{,},!>a}}ua!>},<>}}}}},{{{{{}{!!!!!>i{!>},,},{},},<>,{}}},{,<}!!!>u,}>},{{<,!>,<},<{>},{}!>!!!>a!>,<>}}},{{{{{{},{},<"!!}io!!i}{iu!>>}},{{{{{,{,"!!!!e!!uio!!!>{!!!!>},{!>oe!!!e!>},,<}!i!>>},<{"{ue''{i>},{{},{},<}!>i!>},,<}!>!>},}}},},{{},}{!>},},<}!!!>"o!!!>>,<},},'!>e}!>,<>},{{},}}},{{}},{{},{{},<e!>},<}!>},!>,<'}>}},{},!,{a{!!"!!!>!!'!o}}}},{{{!>},,!oue}"!!!>},<{!>{!!{>}},{,<{!!!>},!>,},<,<}!>'!a>,{},!>},},,<<>}},{{!}>}}},{{{}},{{{{}},<{'""a!>o!!!>'!>'!>},<>}}},{{{!{>}},{{{}i,},u!>>}},{{<>}}}},{{},{{{},,!!!>},!><'>},{,!>},a!>},,,,<"}!!'ou'>}},{{,<,>,{}},o!>},<}!>,}},{{{{},{,o'u!!!>},<"i{a!>,}}},{{{<,i!o}u!!!>!!!!!>}>},<{u!!'!!{e}},{{<}!>,}}}}},{{{{<,">},<"{"!!,<"o!>,},},{{!>ui,e!e!!!><{o<">,{}}}},{{{{!>i<!!!!!>,}},{{},{{{!!!!!>>}},{!!a!!ai!"{ou!>}},{<{!!!>!>},u,u!!>}},{{{},{}},{{<>,{<!!!i!>u!!!>,<>,{a!>,<,{!!{e!!!!!>i!!!>,,<'!'>}}}}}},{{{<<},<"iu!!ai>},{{{{<{,>}}}}},{{{{{{{,e!!}!!"!',!>,!>>},{<'!o'o}!>,<>}},}!u!>,},},{}},{,"a!>},,}},{{>}}},{<,u>,'o,'o>},{{{{},{<"!>},}},{<,u!!!!!>,oi!uo!e!!e!>!>!!}>,!!!>!>,!>},<>}}}}},{{},{{<>},},}},{{{{{{{<{!!!>!>,,'!>},,},{}},>},<>},{{,o>},{}a>,{<'a''ui'!a!!}}'>}}},{{,>}}},{{{{,},},{{}}}}}},{{},},!>!!!>,e!>,},},},{{<"!>},i>,},{ee!!!>,},{{{!!!!!!i!!}!'!!!>},,i{}!!!>,},},{{{,!}!>i<>},{<"i,!>,>}}}},{<}{o>}}}}},{},{{<}o!},}!>,<}u>,<<}<,,},{{},{{},'e{!>},<">},{a!!!>{'!!{'u,>}}}}},{{{{!>},'ii!!!!aa!!,a!>},<'!oio!!!>>},{}},{{},{}}},{{{{<"io,"'!>,},{{!!,!!!>},<"!!i}!!!>,<'>},},<>}},{!,!!!>'!>},<''!>},"<>,}}}},{{{{},{!>},,!!!>!i!>,,<>}},{}},{{{},{{},},<}!!!!"!!!>!!},<"'!>},<>}}},{},}>,{{{},!>},<>}}},{{{'o!!!i,e}!!!!!>a,!!'>}}}}}},{{{},{{{!!!>e>},{!!!!u>}},{{}}},{{{{<'!>'i'!>},!>,<}!>,<,}},o!!!>,!,},{},{{},!!!>>}}}},{{},{{<>,{{},!o!>,<<,u<'oo,!>},ea'<>},{!!!>!!!!}!!!>},a,o'o>}}}},{{>,{,!>!>,>}},{<{o!!'>}},{{},{{}}}}},{{{{<>},{,},<>},{{},,'}!!!!e!!u!!'!>>}},{{{},},!!i,'oi'">}}},{{{{<,{u!!{!>}}!>},},{<>}},{{{o'!!!>,!!,i!>,},{a!i"!!!!!>u!!a'>}},{{},u!!>,{}},{}},{{{}}}},{{{},!!!>!>,,<>},{{{},'!>},''{!>"e!>},{<>}},}}}},{{<"!!!'o!>o,{}},{{{{{},{}},{}},},!},{<'!>,},{,!!!>e<,,{{}}}}},{{!>},>},{{e!!!>u"}!>,eou{io!!!>,<>,{}},{{!!!!!},,}}},{<{<}!>"<{!>,!>!>,,<}eei{"a>}}},{{{{},{!!!>},<,,>}},ia{a{!!!>u!},<<>},{{},{{{,,},,io!>!}!>},},<>},{{<'uuu}}}},{{},{,},<'!>u!}>}}}},{{{{{<"!>},!!,>,{}},{{<{!>},o"!!{!!<'>},{ui"!!!!!>!!iu!>},<">}},{,},},,},<>}},{!!,!{!>,oe!!!>!u!!,!!aa!!}u>,!>},},},,<>},{{{},{}},{},,<>}}},{{<>}}},{{{{>}},<}!!!!!>},<}{{ua!!u{<"<"!!!>>},{{!>,!>e!!!>,!!}!!!!o!!!><'!"}!>'<>,},},<{!>},<,<,!!u!oe,"!!a!!!!!!i>},{<{,!!!>"<'i,!!!!'!!,,<"o!!,{}}},{{},{{},{!{},<>,{{i>},{}}}}},{{},<'u>},{iu'!>},!!"!>,<,o!>},<'}}oe>}}}}}} diff --git a/day09/part1.js b/day09/part1.js new file mode 100644 index 0000000..b038d11 --- /dev/null +++ b/day09/part1.js @@ -0,0 +1,6 @@ +var input = require("fs").readFileSync("input.txt").toString(); +var nogarbage = input.replace(/!./g, "").replace(/<[^>]*>/g, ""); +var json = nogarbage.replace(/{/g, "[").replace(/}/g, "]").replace(/\[[,]+/g, "[").replace(/[,]+\]/g, "]"); +var structure = JSON.parse(json); +score = (o, d)=>(o.map((c)=>(score(c, d+1))).reduce((a, b)=>(a+b), 0) + d); +console.log(score(structure, 1)); diff --git a/day09/part2.js b/day09/part2.js new file mode 100644 index 0000000..5692695 --- /dev/null +++ b/day09/part2.js @@ -0,0 +1,13 @@ +var input = require("fs").readFileSync("input.txt").toString(); +var cancelled = input.replace(/!./g, ""); +var garbage = []; +var match = null; +var regex = new RegExp("<([^>]*)>", "g"); +do{ + match = regex.exec(cancelled); + if(match){ + garbage.push(match[1]); + } +} +while(match != null); +console.log(garbage.map((a)=>(a.length)).reduce((a, b)=>(a+b)));