Day 11
This commit is contained in:
@@ -43,6 +43,10 @@ path = "src/day9/main.rs"
|
|||||||
name = "day10"
|
name = "day10"
|
||||||
path = "src/day10/main.rs"
|
path = "src/day10/main.rs"
|
||||||
|
|
||||||
|
[[bin]]
|
||||||
|
name = "day11"
|
||||||
|
path = "src/day11/main.rs"
|
||||||
|
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
anyhow = "1.0.100"
|
anyhow = "1.0.100"
|
||||||
|
|||||||
604
src/day11/act.txt
Normal file
604
src/day11/act.txt
Normal file
@@ -0,0 +1,604 @@
|
|||||||
|
zmg: vew ynx rdv kzq
|
||||||
|
fho: drg
|
||||||
|
qtg: bcp kzq
|
||||||
|
nbp: fkn
|
||||||
|
oaa: ulw zyf
|
||||||
|
fyy: dwh vjr cdg miw
|
||||||
|
rwj: kkt hdz irr ovu
|
||||||
|
qoy: rao eev wzh wkc
|
||||||
|
jzz: glp pwf fwp
|
||||||
|
aqu: swy txo nqu mla
|
||||||
|
yws: zxh fft
|
||||||
|
rdd: zbw cqw
|
||||||
|
hoo: bfn amg vyd dod ovp kii
|
||||||
|
bnz: vdk
|
||||||
|
shw: gzx
|
||||||
|
iep: zbw
|
||||||
|
mxl: udq owi yhh rrk
|
||||||
|
izl: tfr
|
||||||
|
oku: pvp
|
||||||
|
omu: pvq tsj hfl
|
||||||
|
xwc: bdu tuz tkz
|
||||||
|
tjf: rek vil
|
||||||
|
uak: bko
|
||||||
|
idt: yrr
|
||||||
|
que: yyb aqu cfl
|
||||||
|
tmg: eev
|
||||||
|
ybn: hfe qou xrk
|
||||||
|
dgj: jbz you fhk hoo
|
||||||
|
hfl: fmn gzw sug
|
||||||
|
mix: gzx
|
||||||
|
cwn: fhk you jbz
|
||||||
|
rek: dfy ued zya nnk
|
||||||
|
sug: utp btl lzb hor ndl uuw kyi zqd jdq cfs nvd acs pyx pbm eqc ome
|
||||||
|
lan: kkt ovu irr
|
||||||
|
miy: uub gyg yol tua
|
||||||
|
dev: out
|
||||||
|
ykn: fea rlv how ksp
|
||||||
|
yom: fhk
|
||||||
|
tcl: fnb
|
||||||
|
nnk: hdz kkt
|
||||||
|
wau: rtw vuk aoe
|
||||||
|
amz: nxs vku
|
||||||
|
nqy: fdp wyk
|
||||||
|
bdj: hit ytb tcl
|
||||||
|
bgd: uru mhm
|
||||||
|
zdl: fps pmc maa frp
|
||||||
|
wrv: sug cjl gzw fmn
|
||||||
|
feh: irc ojk
|
||||||
|
efc: out
|
||||||
|
zst: rta knd
|
||||||
|
nqi: gyt pwv
|
||||||
|
snz: out
|
||||||
|
fea: wqv hse rqw
|
||||||
|
tqh: fea
|
||||||
|
hho: isx whl yiz
|
||||||
|
tkz: zkq
|
||||||
|
omh: uuu
|
||||||
|
dxu: dwh vjr sfc cdg miw
|
||||||
|
wzh: zbx tjd
|
||||||
|
iyj: bgw mug
|
||||||
|
naw: hhm pkw hwn
|
||||||
|
qdf: tjr
|
||||||
|
vku: kez abg qmx
|
||||||
|
udf: ulz
|
||||||
|
mhj: tmg ffw qoy flj nyf ybn que fxt rua rys vyu cri aoh nuf fik jsk wmy epz
|
||||||
|
uuy: sug
|
||||||
|
roi: out
|
||||||
|
abz: isx yiz
|
||||||
|
cvr: isx yiz whl
|
||||||
|
xrw: fwp pwf fnk glp
|
||||||
|
rta: yug thh
|
||||||
|
lyu: efc yxj iof hgu kpd
|
||||||
|
qwv: fkn gzx lzk
|
||||||
|
aum: yrx ubo
|
||||||
|
uuu: fmn gzw cjl sug
|
||||||
|
hjd: hbs
|
||||||
|
epr: maa frp pmc srx fps
|
||||||
|
sav: dst
|
||||||
|
rng: qou xrk
|
||||||
|
jue: rdd cze
|
||||||
|
wzl: out
|
||||||
|
nwn: gyt cwn
|
||||||
|
flj: aqu yyb
|
||||||
|
cdj: kxf daa
|
||||||
|
zln: nxs owg vku
|
||||||
|
pmu: kwh pql
|
||||||
|
tqw: lzk jhf gzx fkn
|
||||||
|
txo: nfb eez prz wkl
|
||||||
|
bko: gzx fkn jhf lzk
|
||||||
|
cym: plo
|
||||||
|
ovp: plo imv ums sjv
|
||||||
|
sjv: vre qtg
|
||||||
|
uzz: irr
|
||||||
|
nxs: kez aum qmx
|
||||||
|
hwe: cqb abv
|
||||||
|
lak: weu rtq
|
||||||
|
gvt: iyd
|
||||||
|
bcm: frp fps
|
||||||
|
pli: mug pfl pxs
|
||||||
|
gxw: jyz
|
||||||
|
nrb: sem pmu kcm teh
|
||||||
|
ffw: cfl
|
||||||
|
teh: pql vnb kwh
|
||||||
|
zdh: pvn
|
||||||
|
ome: byz lql
|
||||||
|
jnl: mdt ajt yzg nvq lfk aco yws kpp wff vxd nrb evs tjx cdj zdl kml ipx kkf vaw xjv
|
||||||
|
yxj: out
|
||||||
|
lof: sug gzw
|
||||||
|
hwn: you hoo
|
||||||
|
eva: jiq dny jky yom
|
||||||
|
rgs: qke abv cqb
|
||||||
|
fxt: tlz qtc
|
||||||
|
fft: mbr uuu
|
||||||
|
xjw: rtq
|
||||||
|
fnp: fnb ctz jnl wpq zvu
|
||||||
|
dcw: out
|
||||||
|
rms: pym lyu
|
||||||
|
nwy: wxb bko qkz shw gvo
|
||||||
|
wpq: aco nrb zdl epr mdt
|
||||||
|
lpf: jho
|
||||||
|
tzo: wkm yns ndo
|
||||||
|
kii: yag gel
|
||||||
|
oty: dmu
|
||||||
|
cjl: vkl ndl eqc hor pbm hki nvd lzb btl utp jdq zqd qlt
|
||||||
|
kdw: evf dxu
|
||||||
|
inn: jnl zvu wpq ctz
|
||||||
|
idv: yol uub gyg
|
||||||
|
epz: yyb
|
||||||
|
ovu: zst kdw czw xrw alk hkm kha sor gct ytl wvx ixw edo qmw vvm qdf jzz eat
|
||||||
|
gel: bdu
|
||||||
|
oic: rms
|
||||||
|
arh: cvo wkq toa vdh
|
||||||
|
bgw: yoo
|
||||||
|
grv: wkm
|
||||||
|
duj: emk
|
||||||
|
tog: sem kcm teh
|
||||||
|
srx: omu otm qpk
|
||||||
|
pdv: rek asl vil
|
||||||
|
cvj: pdi
|
||||||
|
utp: pdv ugr jho
|
||||||
|
ufz: sug fmn gzw
|
||||||
|
vvm: eem
|
||||||
|
imv: ses zmg vre
|
||||||
|
uzk: oty nlq
|
||||||
|
pwv: jbz
|
||||||
|
xhr: jti ufz uls
|
||||||
|
xwa: cxv xjw qbx lak
|
||||||
|
kbb: jnl zvu fnb
|
||||||
|
chx: jhf
|
||||||
|
nxn: fxt wmy que jsk rng oxu flj tmg ybn
|
||||||
|
kkt: alk hkm bfb zst kdw xrw czw tnr ixw edo vvm qmw jzz eat qdf kha sor gct lsg ytl
|
||||||
|
vqb: fmn gzw
|
||||||
|
ytb: zvu fnb
|
||||||
|
pmm: hhm
|
||||||
|
evs: fho vyk
|
||||||
|
far: iep kir axy cze
|
||||||
|
hkt: zev uga
|
||||||
|
fwp: cdu pdk szr oaa
|
||||||
|
lfk: vyk dqg
|
||||||
|
hkv: shw wxb gvo
|
||||||
|
rgv: ctz fnb jnl zvu wpq
|
||||||
|
plo: vre ses zmg
|
||||||
|
qmw: tjr hmb
|
||||||
|
ari: kxu
|
||||||
|
xrk: bdj gfq
|
||||||
|
jyz: rwj ryf
|
||||||
|
jho: asl rek
|
||||||
|
irm: you hoo
|
||||||
|
hit: jnl ctz fnb
|
||||||
|
yug: xfk trd ffe
|
||||||
|
edo: tjr hmb ibe
|
||||||
|
qiu: fdp wyk
|
||||||
|
glp: szr pdk cdu
|
||||||
|
ohw: ary
|
||||||
|
ytl: evf
|
||||||
|
aaf: tcl rgv
|
||||||
|
eqc: zkb mxl zke
|
||||||
|
aco: frp srx pmc
|
||||||
|
eem: ari jvj
|
||||||
|
wkc: ubu zbx
|
||||||
|
jdq: byz tue
|
||||||
|
udq: ovu irr ybz kkt hdz
|
||||||
|
vyd: hlf sur rpe ntd
|
||||||
|
kez: yrx szz ubo
|
||||||
|
gvn: wpq jnl fnb ctz
|
||||||
|
wvx: fyy dxu
|
||||||
|
cvo: out
|
||||||
|
nev: uls tqy ufz jti
|
||||||
|
ipx: sem
|
||||||
|
gqb: izl
|
||||||
|
vfz: wkm yns ndo
|
||||||
|
sor: buf
|
||||||
|
lsg: knd
|
||||||
|
uuw: mxl zkb
|
||||||
|
ufu: bqi ssr yag
|
||||||
|
qmj: pwv
|
||||||
|
ruw: vuk fnp aoe
|
||||||
|
zya: ybz irr
|
||||||
|
tuz: bnz oai
|
||||||
|
rdv: sjc bew
|
||||||
|
tyc: znl
|
||||||
|
dfy: irr ovu kkt
|
||||||
|
wkm: irm dgj yqu
|
||||||
|
kyi: jho pdv tjf
|
||||||
|
pyx: zke
|
||||||
|
rrk: ovu irr hdz
|
||||||
|
mhm: cxv xjw qbx
|
||||||
|
ynx: vdf arh
|
||||||
|
zxh: uuu
|
||||||
|
zot: uuy kvl
|
||||||
|
pkw: jbz hoo
|
||||||
|
dqg: bww vqb kvl
|
||||||
|
axb: vyi
|
||||||
|
ajt: dzl haw nii hkt
|
||||||
|
wyk: pvn fnu myf
|
||||||
|
geg: out
|
||||||
|
ntd: uzk ggo
|
||||||
|
bgt: zdh
|
||||||
|
xfk: zih
|
||||||
|
qoq: xiw woi dcw geg smh
|
||||||
|
yzg: pmu teh sem
|
||||||
|
rqe: jti ufz tqy
|
||||||
|
ybz: czw xrw bfb hkm lsg kha gct edo qdf jzz eat qmw
|
||||||
|
zkq: vkn vdk ufm
|
||||||
|
vyu: ruw boq wau
|
||||||
|
cdg: uak
|
||||||
|
rlv: oic hse
|
||||||
|
ugr: rek
|
||||||
|
myf: fhk you hoo
|
||||||
|
bso: jcg mvt aji yny
|
||||||
|
ozr: kkt hdz irr ovu
|
||||||
|
uub: zvu jnl fnb ctz
|
||||||
|
czw: fwp
|
||||||
|
pmc: omu qpk usl
|
||||||
|
prz: kbb urb
|
||||||
|
vaw: zxh fft zrw
|
||||||
|
cph: out
|
||||||
|
inh: ble
|
||||||
|
dmu: woi dcw
|
||||||
|
emk: nqs dac
|
||||||
|
rao: zbx
|
||||||
|
ipm: pdk
|
||||||
|
kcm: kwh
|
||||||
|
wxb: gzx
|
||||||
|
jbq: hvb rys rua fxt nyf ybn yrj tmg ffw qoy flj epz jsk nuf vyu cri
|
||||||
|
ary: oty nlq iyd
|
||||||
|
ypy: vis jsp qmj nqi nwn
|
||||||
|
isx: deb naw pmm
|
||||||
|
wmy: hfe
|
||||||
|
shb: hhm hwn xik
|
||||||
|
znl: qit zpr ryf
|
||||||
|
cze: sby
|
||||||
|
xiw: out
|
||||||
|
dny: hoo
|
||||||
|
kxu: fkn jhf
|
||||||
|
cre: auy
|
||||||
|
wzq: gzx lzk
|
||||||
|
pym: iof hgu efc yxj
|
||||||
|
wby: jcg
|
||||||
|
aik: ojk gvn irc
|
||||||
|
wra: vyi jcg aji
|
||||||
|
xuq: hoo
|
||||||
|
ffe: wzq
|
||||||
|
qmx: dwf
|
||||||
|
ana: ulz cut
|
||||||
|
qbx: weu rtq
|
||||||
|
qlt: rez sbk cre hjd
|
||||||
|
bew: wkq cvo roi vdh toa
|
||||||
|
vdh: out
|
||||||
|
xbo: xln
|
||||||
|
szz: usg qtz
|
||||||
|
toa: out
|
||||||
|
jbz: cxl vyd cym elv ufu sfh
|
||||||
|
zkb: lan udq
|
||||||
|
kxf: nev rqe
|
||||||
|
cxl: imv ums
|
||||||
|
ral: lak
|
||||||
|
jsp: cwn
|
||||||
|
cwr: jhf
|
||||||
|
pfl: yoo yrg
|
||||||
|
xln: out
|
||||||
|
jky: jbz hoo fhk you
|
||||||
|
sur: jem gvt
|
||||||
|
rxy: out
|
||||||
|
jcg: nbp chx tsb mix
|
||||||
|
btl: pny jue
|
||||||
|
bqi: tuz
|
||||||
|
rys: rao eev wzh zkn wkc
|
||||||
|
pny: cze iep axy rdd
|
||||||
|
tue: gxw cxu
|
||||||
|
zke: lan owi
|
||||||
|
cqw: kkt ovu
|
||||||
|
vmw: lyu
|
||||||
|
gab: cut emk
|
||||||
|
smh: out
|
||||||
|
kvl: sug fmn gzw
|
||||||
|
vjv: zpr ryf rwj qit
|
||||||
|
uru: cxv xjw
|
||||||
|
ksp: hse wqv
|
||||||
|
sfc: eky uak nwy hkv
|
||||||
|
hhm: hoo fhk jbz
|
||||||
|
fdp: pvn hfc myf
|
||||||
|
gvc: jbz
|
||||||
|
asl: dfy zya
|
||||||
|
fnk: oaa
|
||||||
|
mfs: yat
|
||||||
|
vuk: ctz fnb zvu wpq jnl
|
||||||
|
maa: oku omu
|
||||||
|
cza: yny
|
||||||
|
nvd: far pny
|
||||||
|
qkz: jhf gzx
|
||||||
|
sbk: hbs hut
|
||||||
|
rpe: jem ggo
|
||||||
|
elv: gel xwc bqi yag
|
||||||
|
qlg: bgw
|
||||||
|
tnr: hmb
|
||||||
|
yrg: you fhk hoo
|
||||||
|
mbi: lzk fkn
|
||||||
|
pdf: ksp fea how rlv lvc
|
||||||
|
frp: qpk
|
||||||
|
owg: aum kez
|
||||||
|
utj: sug gzw
|
||||||
|
bfb: ipm glp pwf fwp
|
||||||
|
byz: gxw cxu
|
||||||
|
buf: jvj hrd yrr ari
|
||||||
|
hrk: kpd efc yxj
|
||||||
|
trd: qwv wzq
|
||||||
|
hor: hsv far pny jue
|
||||||
|
tgh: wzq zih
|
||||||
|
szr: zyf
|
||||||
|
zev: sav vkg uhr
|
||||||
|
irr: wvx gct kha lsg vvm jzz eat ixw edo xrw kdw czw tnr zst hkm
|
||||||
|
fps: oku
|
||||||
|
yrx: xbo usg qyt qtz
|
||||||
|
vnb: utj vqm
|
||||||
|
zyf: fkn jhf lzk
|
||||||
|
lzk: udf duj tzo haa pfh uwc
|
||||||
|
axy: cqw zbw
|
||||||
|
sfh: hlf rpe sur
|
||||||
|
oai: ufm
|
||||||
|
ojk: zvu wpq ctz fnb
|
||||||
|
vxd: dqg zot
|
||||||
|
mvm: fmn
|
||||||
|
yiz: fdk
|
||||||
|
fdk: pkw hwn xik
|
||||||
|
tsb: fkn gzx
|
||||||
|
nuf: wau boq
|
||||||
|
gyg: wpq zvu jnl
|
||||||
|
jvz: wyk zdh
|
||||||
|
boq: aoe fnp vuk rtw
|
||||||
|
ckx: out
|
||||||
|
ffm: cjw pdi
|
||||||
|
jti: fmn cjl
|
||||||
|
eaq: lzk
|
||||||
|
hhy: ovu ybz hdz
|
||||||
|
urb: fnb ctz
|
||||||
|
yrj: ruw wau
|
||||||
|
lql: trg tyc
|
||||||
|
you: qsz bqf tqh zln kii bgd pth
|
||||||
|
lca: ypy tfr rwd
|
||||||
|
ble: bgt nqy
|
||||||
|
sby: ybz hdz kkt ovu
|
||||||
|
war: tqy
|
||||||
|
nii: aub zev hmp
|
||||||
|
fnb: zdl nvq tjx tog ljh vaw ipx
|
||||||
|
vkn: snz rxy cph
|
||||||
|
iof: out
|
||||||
|
cfl: swy nqu mla
|
||||||
|
cqb: nqy qiu
|
||||||
|
swy: nfb lhi eez prz wkl
|
||||||
|
jiq: you hoo jbz
|
||||||
|
lni: wkq cvo toa roi vdh
|
||||||
|
uhr: dst rjv
|
||||||
|
nfb: inn kbb urb
|
||||||
|
afj: xjw cxv jrw qbx lak
|
||||||
|
usl: pvq
|
||||||
|
pxn: zvu ctz
|
||||||
|
dod: rpe ntd ohw
|
||||||
|
gzw: lzb lpf utp jum vkl uuw ndl hki qlt kyi cfs jdq pbm eqc acs nvd pyx
|
||||||
|
hki: tue byz
|
||||||
|
tua: ctz wpq zvu
|
||||||
|
hmp: ocz
|
||||||
|
tve: kud yug
|
||||||
|
qpk: tsj pvp pvq
|
||||||
|
iyd: prb dmu
|
||||||
|
jrw: rtq kwa
|
||||||
|
ndl: jho tjf
|
||||||
|
hdz: vvm hkm alk tnr sor zst
|
||||||
|
evf: cdg miw
|
||||||
|
nbl: ozr
|
||||||
|
ibe: wby bso axb wra
|
||||||
|
coy: nwn nqi qmj vis
|
||||||
|
kha: eem idt
|
||||||
|
irc: fnb ctz jnl wpq zvu
|
||||||
|
cfs: zke zkb mxl
|
||||||
|
kzq: arh vdf
|
||||||
|
gct: rta
|
||||||
|
mbr: gzw fmn sug
|
||||||
|
cdu: zyf tqw
|
||||||
|
vkg: mvm
|
||||||
|
nqu: wkl prz eez lhi
|
||||||
|
pql: utj lof bhd
|
||||||
|
pvq: fmn gzw sug cjl
|
||||||
|
zpr: kkt ybz irr
|
||||||
|
qsz: ums sjv
|
||||||
|
dwh: eky nwy ozt hkv
|
||||||
|
cjw: out
|
||||||
|
fjn: pym hrk
|
||||||
|
zih: fkn gzx jhf
|
||||||
|
eez: inn
|
||||||
|
ulz: nqs eva dac
|
||||||
|
ufm: ckx snz cph
|
||||||
|
whl: fdk naw deb shb
|
||||||
|
hsv: iep axy kir cze
|
||||||
|
qyt: dzo
|
||||||
|
rtq: gbo ffm cvj
|
||||||
|
cyf: yat
|
||||||
|
ssr: tkz
|
||||||
|
yol: wpq
|
||||||
|
yny: tsb mix
|
||||||
|
ubu: idv miy
|
||||||
|
cxv: kwa rtq weu
|
||||||
|
hmb: cza wby
|
||||||
|
brs: out
|
||||||
|
deb: pkw
|
||||||
|
bhd: gzw fmn cjl
|
||||||
|
ewj: vku
|
||||||
|
abg: ubo szz dwf yrx
|
||||||
|
prb: xiw geg
|
||||||
|
jvj: eaq dlc
|
||||||
|
qit: ybz hdz ovu irr
|
||||||
|
vkl: tal tue
|
||||||
|
tjd: miy
|
||||||
|
eev: tjd ubu zbx
|
||||||
|
usg: wzl dzo xln
|
||||||
|
miw: hkv uak nwy
|
||||||
|
ulw: lzk jhf
|
||||||
|
yag: bdu tkz tuz
|
||||||
|
weu: gbo mkb ffm
|
||||||
|
hkm: knd
|
||||||
|
mdt: zrw fft omh
|
||||||
|
aji: chx tsb mix mbi
|
||||||
|
trg: vjv nbl
|
||||||
|
eky: gvo
|
||||||
|
ubo: qyt
|
||||||
|
abv: bgt qiu
|
||||||
|
pwf: cdu pdk szr oaa
|
||||||
|
jem: iyd nlq
|
||||||
|
csr: yol uub gyg
|
||||||
|
yyb: nqu txo
|
||||||
|
zrw: wrv mbr
|
||||||
|
qou: gfq aaf bdj
|
||||||
|
kpp: daa
|
||||||
|
sem: vnb kwh
|
||||||
|
hvb: qou
|
||||||
|
uwc: ulz
|
||||||
|
mkb: pdi dev
|
||||||
|
amg: afj xwa uru ral mhm
|
||||||
|
pth: afj xwa mhm
|
||||||
|
how: wqv rqw
|
||||||
|
dwf: qtz usg qyt
|
||||||
|
jum: zkb zke
|
||||||
|
woi: out
|
||||||
|
yat: tfr coy ypy
|
||||||
|
pvn: jbz hoo
|
||||||
|
alk: tve knd rta
|
||||||
|
sjc: wkq roi toa
|
||||||
|
ryf: kkt ovu
|
||||||
|
vjr: nwy uak ozt hkv
|
||||||
|
abw: gyh cri vyu rng jsk fik nuf wmy ybn nyf tmg yrj ffw flj qoy oxu rys hvb que rua fxt
|
||||||
|
ums: zmg ses
|
||||||
|
fhk: amg cxl ewj amz pdf cym tqh sfh zln ykn
|
||||||
|
gbo: icr
|
||||||
|
tfr: jsp
|
||||||
|
fmn: pyx acs nvd ome eqc cfs jdq zqd kyi qlt hki ndl hor utp jum lpf btl lzb
|
||||||
|
gfq: hit pxn tcl
|
||||||
|
ndo: yqu irm
|
||||||
|
hgu: out
|
||||||
|
yhh: ybz hdz ovu irr
|
||||||
|
otm: pvp hfl
|
||||||
|
qla: isx yiz
|
||||||
|
dzo: out
|
||||||
|
wqv: vmw fjn rms
|
||||||
|
bww: gzw sug cjl
|
||||||
|
qtz: xln wzl
|
||||||
|
tjr: bso wra axb cza
|
||||||
|
hbs: uzz
|
||||||
|
yrr: cwr
|
||||||
|
gyt: you hoo
|
||||||
|
wff: daa
|
||||||
|
bfn: ohw sur rpe
|
||||||
|
yoo: fhk hoo jbz
|
||||||
|
ixw: fnk
|
||||||
|
dzl: zev hmp
|
||||||
|
tqy: fmn
|
||||||
|
zkn: tjd zbx
|
||||||
|
cri: aik feh qtc
|
||||||
|
daa: xhr
|
||||||
|
lvc: hse rqw
|
||||||
|
cxu: znl vjv
|
||||||
|
vqm: fmn sug
|
||||||
|
nqs: jiq jky
|
||||||
|
rjv: sug cjl fmn gzw
|
||||||
|
kir: sby zbw
|
||||||
|
kml: dqg
|
||||||
|
qke: qiu jvz nqy
|
||||||
|
svr: nxn mhj ybx abw jbq
|
||||||
|
pbm: rez sbk
|
||||||
|
haw: uga aub hmp zev
|
||||||
|
drg: gzw
|
||||||
|
eat: evf
|
||||||
|
kpd: out
|
||||||
|
pdg: ovu kkt hdz ybz
|
||||||
|
hlf: uzk ggo ary
|
||||||
|
tjx: teh kcm sem
|
||||||
|
ses: rdv kzq vew ynx bcp
|
||||||
|
oxu: boq ruw
|
||||||
|
zbw: irr
|
||||||
|
ozt: bko qkz wxb
|
||||||
|
vre: rdv ynx bcp
|
||||||
|
aub: vkg uhr
|
||||||
|
tmp: xhr war rqe
|
||||||
|
pdi: out
|
||||||
|
hse: fjn
|
||||||
|
gyh: qtc feh
|
||||||
|
nlq: dmu qoq
|
||||||
|
zvu: tjx cdj zdl kml ipx kkf vaw bcm epr ljh ajt nvq lfk aco yws kpp wff vxd nrb evs
|
||||||
|
rez: hbs auy hut
|
||||||
|
hfc: hoo fhk jbz
|
||||||
|
nyf: wzh rao
|
||||||
|
tal: trg
|
||||||
|
uga: vkg ocz
|
||||||
|
dac: jiq jky gvc dny
|
||||||
|
ued: ovu
|
||||||
|
thh: ffe tgh xfk
|
||||||
|
icr: out
|
||||||
|
rua: hfe xrk
|
||||||
|
bdu: oai bnz
|
||||||
|
kkf: hkt haw nyp dzl
|
||||||
|
rwd: vis nqi nwn
|
||||||
|
aoe: zvu jnl ctz
|
||||||
|
kwh: bhd lof vqm utj
|
||||||
|
dlc: fkn gzx jhf
|
||||||
|
vyk: kvl vqb bww
|
||||||
|
vyi: chx
|
||||||
|
hfe: gfq
|
||||||
|
xik: hoo fhk you jbz
|
||||||
|
tsj: cjl sug
|
||||||
|
vdk: ckx brs cph
|
||||||
|
dst: sug cjl fmn gzw
|
||||||
|
vil: dfy ued
|
||||||
|
ljh: tmp
|
||||||
|
ggo: oty nlq
|
||||||
|
aoh: boq ruw
|
||||||
|
hrd: dlc
|
||||||
|
yqu: jbz fhk you hoo
|
||||||
|
vdf: vdh wkq cvo
|
||||||
|
nvq: haw hkt dzl
|
||||||
|
gvo: lzk
|
||||||
|
mug: xuq
|
||||||
|
ctz: yws kpp yzg mdt lfk nrb wff vxd zdl kml cdj ljh tog ipx bcm
|
||||||
|
rtw: fnb ctz wpq
|
||||||
|
uls: gzw fmn sug
|
||||||
|
vew: sjc
|
||||||
|
knd: thh kud
|
||||||
|
pdk: tqw ulw
|
||||||
|
owi: hdz ybz
|
||||||
|
qtc: gvn ojk
|
||||||
|
fkn: hho udf vfz cyf wiy uwc inh iyj qlg grv mfs pfh qla abz pli cvr
|
||||||
|
pvp: sug
|
||||||
|
lhi: urb
|
||||||
|
nyp: uga aub
|
||||||
|
mvt: mix mbi tsb
|
||||||
|
ybx: nyf aoh flj yrj rys rng epz rua wmy
|
||||||
|
auy: pdg hhy
|
||||||
|
vis: gyt cwn
|
||||||
|
mla: nfb wkl prz lhi
|
||||||
|
hut: uzz pdg
|
||||||
|
jsk: wkc wzh eev rao
|
||||||
|
fik: cfl
|
||||||
|
bqf: fea rlv how ksp lvc
|
||||||
|
acs: tjf ugr jho
|
||||||
|
tlz: ojk
|
||||||
|
fnu: hoo
|
||||||
|
cut: dac
|
||||||
|
lzb: cre
|
||||||
|
wiy: pxs mug
|
||||||
|
pxs: yoo
|
||||||
|
jhf: haa uwc iyj wiy duj cyf udf gqb cvr ana pli tzo abz qla hwe qlg gab grv
|
||||||
|
zqd: sbk
|
||||||
|
ocz: dst
|
||||||
|
kud: trd ffe
|
||||||
|
yns: yqu dgj
|
||||||
|
gzx: vfz rgs gab gqb qlg udf inh ana iyj duj wiy
|
||||||
|
pfh: lca yat
|
||||||
|
xjv: kxf
|
||||||
|
haa: yiz
|
||||||
|
kwa: gbo ffm mkb cvj zcl
|
||||||
|
zbx: csr idv
|
||||||
|
bcp: bew lni vdf
|
||||||
|
rqw: vmw fjn rms
|
||||||
|
zcl: dev pdi cjw
|
||||||
|
wkl: kbb
|
||||||
|
wkq: out
|
||||||
125
src/day11/main.rs
Normal file
125
src/day11/main.rs
Normal file
@@ -0,0 +1,125 @@
|
|||||||
|
use anyhow::Result;
|
||||||
|
use std::{
|
||||||
|
collections::{HashMap, HashSet},
|
||||||
|
fs,
|
||||||
|
};
|
||||||
|
|
||||||
|
fn sol1() -> Result<()> {
|
||||||
|
let text = fs::read_to_string("src/day11/act.txt")?;
|
||||||
|
|
||||||
|
let graph = text
|
||||||
|
.split("\n")
|
||||||
|
.filter(|a| a.len() > 0)
|
||||||
|
.fold(HashMap::new(), |mut g, m| {
|
||||||
|
let mut split = m.split(":");
|
||||||
|
let node = split.next().unwrap();
|
||||||
|
let outs = split
|
||||||
|
.next()
|
||||||
|
.unwrap()
|
||||||
|
.trim()
|
||||||
|
.split(" ")
|
||||||
|
.fold(HashSet::new(), |mut s, a| {
|
||||||
|
s.insert(a);
|
||||||
|
s
|
||||||
|
});
|
||||||
|
g.insert(node, outs);
|
||||||
|
g
|
||||||
|
});
|
||||||
|
|
||||||
|
fn count_paths(t: &str, visited: &HashSet<&str>, g: &HashMap<&str, HashSet<&str>>) -> usize {
|
||||||
|
let mut visited = visited.clone();
|
||||||
|
visited.insert(t);
|
||||||
|
let mut sum = 0;
|
||||||
|
for i in g.get(t).unwrap() {
|
||||||
|
if visited.contains(i) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
if *i == "out" {
|
||||||
|
sum += 1;
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
sum += count_paths(i, &visited, g);
|
||||||
|
}
|
||||||
|
return sum;
|
||||||
|
}
|
||||||
|
|
||||||
|
println!("sol1: {}", count_paths("you", &HashSet::new(), &graph));
|
||||||
|
|
||||||
|
Ok(())
|
||||||
|
}
|
||||||
|
|
||||||
|
fn sol2() -> Result<()> {
|
||||||
|
let text = fs::read_to_string("src/day11/act.txt")?;
|
||||||
|
|
||||||
|
let graph = text
|
||||||
|
.split("\n")
|
||||||
|
.filter(|a| a.len() > 0)
|
||||||
|
.fold(HashMap::new(), |mut g, m| {
|
||||||
|
let mut split = m.split(":");
|
||||||
|
let node = split.next().unwrap();
|
||||||
|
let outs = split
|
||||||
|
.next()
|
||||||
|
.unwrap()
|
||||||
|
.trim()
|
||||||
|
.split(" ")
|
||||||
|
.fold(HashSet::new(), |mut s, a| {
|
||||||
|
s.insert(a);
|
||||||
|
s
|
||||||
|
});
|
||||||
|
g.insert(node, outs);
|
||||||
|
g
|
||||||
|
});
|
||||||
|
|
||||||
|
let mut node_hit: HashMap<&str, usize> = HashMap::new();
|
||||||
|
let mut node_hit1: HashMap<&str, usize> = HashMap::new();
|
||||||
|
let mut node_hit2: HashMap<&str, usize> = HashMap::new();
|
||||||
|
|
||||||
|
fn count_paths<'a, 'b>(
|
||||||
|
t: &'a str,
|
||||||
|
end: &'a str,
|
||||||
|
visited: &HashSet<&str>,
|
||||||
|
g: &'a HashMap<&'a str, HashSet<&'a str>>,
|
||||||
|
hit: &'b mut HashMap<&'a str, usize>,
|
||||||
|
) -> usize {
|
||||||
|
let mut visited = visited.clone();
|
||||||
|
visited.insert(t);
|
||||||
|
let mut sum = 0;
|
||||||
|
if let Some(n) = g.get(t) {
|
||||||
|
for i in n {
|
||||||
|
if visited.contains(i) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
if *i == end {
|
||||||
|
sum += 1;
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
if let Some(c) = hit.get(i) {
|
||||||
|
sum += c;
|
||||||
|
} else {
|
||||||
|
sum += count_paths(i, end, &visited, g, hit);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
hit.insert(t, sum);
|
||||||
|
return sum;
|
||||||
|
}
|
||||||
|
|
||||||
|
// after some testing there is not path from out -> dac or out -> fft or out -> src
|
||||||
|
// our fft -> dac
|
||||||
|
// so the result is just svr -> fft * fft -> dac * dac -> out
|
||||||
|
|
||||||
|
println!(
|
||||||
|
"sol2: {}",
|
||||||
|
count_paths("svr", "fft", &HashSet::new(), &graph, &mut node_hit)
|
||||||
|
* count_paths("fft", "dac", &HashSet::new(), &graph, &mut node_hit1)
|
||||||
|
* count_paths("dac", "out", &HashSet::new(), &graph, &mut node_hit2)
|
||||||
|
);
|
||||||
|
|
||||||
|
Ok(())
|
||||||
|
}
|
||||||
|
|
||||||
|
fn main() -> Result<()> {
|
||||||
|
sol1()?;
|
||||||
|
sol2()?;
|
||||||
|
Ok(())
|
||||||
|
}
|
||||||
10
src/day11/test.txt
Normal file
10
src/day11/test.txt
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
aaa: you hhh
|
||||||
|
you: bbb ccc
|
||||||
|
bbb: ddd eee
|
||||||
|
ccc: ddd eee fff
|
||||||
|
ddd: ggg
|
||||||
|
eee: out
|
||||||
|
fff: out
|
||||||
|
ggg: out
|
||||||
|
hhh: ccc fff iii
|
||||||
|
iii: out
|
||||||
13
src/day11/test2.txt
Normal file
13
src/day11/test2.txt
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
svr: aaa bbb
|
||||||
|
aaa: fft
|
||||||
|
fft: ccc
|
||||||
|
bbb: tty
|
||||||
|
tty: ccc
|
||||||
|
ccc: ddd eee
|
||||||
|
ddd: hub
|
||||||
|
hub: fff
|
||||||
|
eee: dac
|
||||||
|
dac: fff
|
||||||
|
fff: ggg hhh
|
||||||
|
ggg: out
|
||||||
|
hhh: out
|
||||||
Reference in New Issue
Block a user