2025 Day 11 Complete!
This commit is contained in:
574
2025/day11/input
Normal file
574
2025/day11/input
Normal file
@@ -0,0 +1,574 @@
|
||||
fxp: udl vii hgb qmy
|
||||
ixc: cje lra jhu
|
||||
sgn: apv vbc
|
||||
wua: knq
|
||||
fnr: csd awl vvj fyx cvi xhb mvn guw wid vbp uvk krt oil izj zlh gwv
|
||||
krt: grp cml vxt
|
||||
hwj: laq jlg
|
||||
rus: out
|
||||
oag: wrc gpp
|
||||
uos: zqg aiu gdx
|
||||
xpu: qpb zqg gdx aiu
|
||||
mdb: fnr mwu ozd
|
||||
yrt: jlg ifs laq
|
||||
eao: txi jmk xee sta knq
|
||||
qcj: ivn mwb nrx lgx
|
||||
wks: fyy lyd
|
||||
xso: rqn flj fak
|
||||
ucp: wpn mpy
|
||||
zcf: knq sta xee jmk
|
||||
sdr: vfy gsc wfb
|
||||
ggn: brb ylm kdl rnk
|
||||
tky: wcx ytk hbp xjh dne
|
||||
kzl: sft sof utn
|
||||
epc: uhn cqf xwv
|
||||
srh: shh mei
|
||||
uqe: sft
|
||||
htw: hmf aia wsm
|
||||
wid: qwo
|
||||
daz: yvs
|
||||
bdl: ipm kkp
|
||||
xay: mpi
|
||||
bsb: epc jpb cqs ixc cur ril ybr
|
||||
mwb: out
|
||||
cxr: yvs
|
||||
ruf: jax uvl ctm
|
||||
vtp: rbo
|
||||
tqs: kdl pje ylm brb
|
||||
thb: out
|
||||
ljy: ael tqw
|
||||
tkl: ssx yds
|
||||
ozd: itv csd vvj fyx awl xhb mvn guw vbp hzn yft mfv izj oil uvk cui krt myo fqn gwv zlh
|
||||
uhn: lzx dac iqf
|
||||
zad: wvh tmc ece
|
||||
qlf: gce sgn fni
|
||||
kcf: dka pvw uzw
|
||||
uat: bda mkd
|
||||
aai: gtk gkf cuk qcj
|
||||
mfv: cml
|
||||
qlv: wdr sbi ihm nww jkx bud qxb
|
||||
paz: kbq osk
|
||||
rys: iwh
|
||||
gdx: out
|
||||
hco: cuk gkf
|
||||
gte: wks fft
|
||||
zrw: iur mei shh
|
||||
izj: elj wrh vnz uss
|
||||
lur: jpb zib zwl uzn epc nta cur cqs ybr tkl sle
|
||||
hgu: jmk xee
|
||||
okf: ypu gye qzd
|
||||
mli: dir mzw
|
||||
shh: rjp
|
||||
nhj: ael tqw
|
||||
pbm: fxp dfl
|
||||
vnz: che
|
||||
vim: bmu
|
||||
puz: dcl ofd
|
||||
zrg: ihy
|
||||
scj: ysr knu
|
||||
pjc: uvl jax bvs
|
||||
tbn: uat lkd fdg
|
||||
rcp: okf
|
||||
min: out
|
||||
poc: rta yvs rbo
|
||||
kde: bcz
|
||||
wct: bvs jax uvl
|
||||
wvh: brg
|
||||
wrh: frd kbe ihy
|
||||
fak: jwl lzu dni
|
||||
zaq: jlg ifs laq ppm
|
||||
yun: kde kob qmz uxn
|
||||
boa: yql brg fbt sgu
|
||||
izk: czt
|
||||
xyj: out
|
||||
xhk: ril cur yun pmu nta epc uzn zwl rxn sle tkl puz ixc cqs nqo jpb zzk
|
||||
yql: mjy cfo bpj vqp
|
||||
dcl: nbq
|
||||
ogv: utn sof pld
|
||||
rtp: gpp gmb eka
|
||||
nki: jmk xee knq
|
||||
agn: jly alh ola zcf
|
||||
vrp: hnw
|
||||
lts: yql fbt sgu
|
||||
myo: rhq kvi
|
||||
jpb: dcl xuk
|
||||
dju: vrt ozd fnr you mwu
|
||||
hnw: hmf
|
||||
rhq: ehc
|
||||
dij: knq sta xee txi
|
||||
awl: vxt
|
||||
knu: bsb lur igu
|
||||
dfo: pab
|
||||
ewm: sgn fni gce
|
||||
fed: osk
|
||||
nwy: ppm laq qgn
|
||||
wby: you mwu fnr ozd
|
||||
dir: jmn gpu
|
||||
mjy: wfb iyi vfy
|
||||
fcj: zkn hgq szd
|
||||
mzo: out
|
||||
lzl: xhk
|
||||
czt: xcu xvu
|
||||
tyq: gsc wfb kjq iyi
|
||||
tda: rbo
|
||||
ltv: srf vim mli slg
|
||||
iwh: qpo
|
||||
hnn: bsb fpb lur
|
||||
fan: sgu
|
||||
vqp: zow rqn fak flj wke
|
||||
ltm: pvm xmq
|
||||
cyc: dfl fxp
|
||||
kvi: gwp jnw
|
||||
srd: ipm jrk
|
||||
lkv: fnr vrt
|
||||
shb: hxf thb rus
|
||||
xuk: zxj
|
||||
ifs: ryr gep wck lcp fwn gdh foj
|
||||
ynz: uji
|
||||
igh: sta jmk
|
||||
fyx: krd
|
||||
gkf: ivn mwb axi
|
||||
bcz: ftm rdm wby lkv
|
||||
qeg: jlg qgn ifs ppm
|
||||
goq: icv
|
||||
qmy: out
|
||||
wxl: igh heh hvs
|
||||
kbe: dzp ybw
|
||||
hxf: out
|
||||
tqw: rdn nac
|
||||
bmu: jmn gkl xfg
|
||||
cqf: lzx
|
||||
phn: rbi fjm
|
||||
ykt: sgu fbt brg
|
||||
zqg: out
|
||||
ain: mpj
|
||||
esz: jmk txi
|
||||
bpj: rqn zow flj wke fak
|
||||
qaj: gtk gkf cuk qcj
|
||||
kul: ckh
|
||||
rss: dka nwy
|
||||
gaq: ifs laq jlg
|
||||
ehc: hco qaj qup
|
||||
saf: mwu you fnr vrt
|
||||
mub: bee
|
||||
tns: lyd fyy bqw
|
||||
ssx: utb nel thp hhu wbs
|
||||
mwd: qeg gpo
|
||||
lgx: out
|
||||
lyr: ozd
|
||||
knq: qlf tnt bhv aeo ljy dmr
|
||||
php: sgu
|
||||
qmz: fer bcz
|
||||
oab: lup
|
||||
sof: ikt
|
||||
lte: ytk hbp xjh dne wcx
|
||||
hvs: xee txi knq
|
||||
bnw: yhu qhx
|
||||
jnw: aai hco qup nxs
|
||||
uge: bqw fyy
|
||||
cml: sid txz qgh
|
||||
sle: uwp jhu lra ltm
|
||||
uoi: yql sgu
|
||||
tcu: eao hgu
|
||||
aaj: laq ppm
|
||||
bqy: you
|
||||
gye: qpo
|
||||
csx: you mwu fnr vrt
|
||||
uut: dne xjh wcx
|
||||
tat: kul jxm dxd shb wtu
|
||||
sbi: yvn mub
|
||||
uss: suv ihy kbe
|
||||
def: wrc eka gpp
|
||||
rso: out
|
||||
dmr: oab kbr jaa
|
||||
jhu: xmq
|
||||
qxb: mub sfu fhq yvn
|
||||
nww: htw
|
||||
szd: zfx
|
||||
gpp: qvv min rso iey
|
||||
sft: fzl hnn ikt
|
||||
fwn: mei iur
|
||||
giz: txi sta jmk
|
||||
you: hzn izj oil krt wid awl vbp csd
|
||||
yvs: fpb lur xhk bsb
|
||||
mci: jrk ipm kkp
|
||||
nqo: uwp jhu cje
|
||||
alh: jmk xee sta txi
|
||||
ejz: fjm rbi fim
|
||||
jnd: wua esz
|
||||
igu: nta pmu yun cur ril ybr rxn zwl uzn fnn cqs ixc puz sle zzk jpb nqo zib
|
||||
yft: tky kcj
|
||||
vxt: sid
|
||||
dni: hvs heh mpi
|
||||
jwy: wtu
|
||||
ypu: yrt
|
||||
rqn: lzu dni
|
||||
yfw: bag puu yba
|
||||
vgx: amv gte qwd hpw
|
||||
hgb: out
|
||||
gwp: nxs qaj
|
||||
obo: fbt
|
||||
yhu: xkn jai boa
|
||||
phi: bqy ftm
|
||||
cmi: xyj
|
||||
mvn: ruf btp
|
||||
utn: ikt
|
||||
mkd: zcf giz alh
|
||||
eff: zow rqn wke flj
|
||||
dml: yql brg sgu fbt
|
||||
ivn: out
|
||||
fft: fyy lyd
|
||||
vbp: vnz
|
||||
cuk: ivn lgx axi nrx
|
||||
brb: lts bcq xsx fan
|
||||
ckh: out
|
||||
cui: zrg elj wrh vnz uss
|
||||
ybw: pxr
|
||||
sfu: bee ynz
|
||||
aov: gyl xyj
|
||||
yxq: jsh smb qhx
|
||||
hgq: xvu
|
||||
yba: pab xbk bvq
|
||||
ser: mzo vii hgb qmy
|
||||
xfg: txi xee
|
||||
iey: out
|
||||
vhi: jaa kbr evt ndc
|
||||
kcj: hbp
|
||||
qmf: zfx
|
||||
tum: sgu brg yql
|
||||
sva: her yfw anr
|
||||
ctm: cyc
|
||||
sta: ewm izk bhv tnt vhi hkq ljy waa aeo ofz xhd fcj gwo qlf nhj
|
||||
jai: fbt sgu
|
||||
iyj: dka kez nwy
|
||||
ofd: tlb
|
||||
qff: rcp osk
|
||||
wbs: fnr you mwu vrt ozd
|
||||
ulj: hrd tcu uqb
|
||||
uvk: vxt grp qgy
|
||||
txz: irm jwy fmr
|
||||
yco: out
|
||||
hlo: fxp ser
|
||||
gsc: ldf yqe ulj
|
||||
vpo: zxj tlb
|
||||
jgf: laq
|
||||
hns: uoi tmc ece
|
||||
cvi: gpt otp sva
|
||||
cur: kob kde qmz
|
||||
lre: ipm
|
||||
ryr: wpn fdl
|
||||
wrc: iey yco
|
||||
ftq: fvb kbp scb oap cvl
|
||||
qwd: tns wks uge
|
||||
laq: ryr nhf srh zrw bvv xje gep phn ejz ucp vgx foj gdh tph
|
||||
fyy: vin obo dml php tum
|
||||
iyi: yqe ldf axk
|
||||
wck: mei iur
|
||||
lzu: mpi
|
||||
btp: uvl ctm bvs jax
|
||||
zib: jhu lra cje ltm uwp
|
||||
dac: lyr csx saf rmg vns
|
||||
pje: lts ykt bcq
|
||||
awp: oap kbp
|
||||
iqf: lyr vns
|
||||
fac: qgn
|
||||
iiu: lre
|
||||
gmb: min rso
|
||||
pxk: wsm
|
||||
icv: jlg ifs laq
|
||||
tnt: oab ndc kbr evt
|
||||
guw: otp qwo
|
||||
rjp: fbt sgu
|
||||
iqh: srf vim mli slg
|
||||
xje: mpy
|
||||
cmt: amv gte
|
||||
kob: bcz fer
|
||||
fzl: igu fpb
|
||||
bud: rss fxl
|
||||
lup: fvb cvl
|
||||
bpc: jsh smb yhu
|
||||
jui: fnr mwu you vrt ozd
|
||||
wmr: tmc uoi wvh
|
||||
ulo: yql brg sgu
|
||||
quz: hns avo euq zad
|
||||
avo: wvh uoi tmc
|
||||
wtu: rus thb hxf ckh
|
||||
jsh: xkn ulo boa ahv
|
||||
bbz: mwd imq
|
||||
hpw: fft tns uge
|
||||
nbq: gcg jui zqy
|
||||
cel: fxp dfl
|
||||
jrk: lsu nki wgx
|
||||
qzd: acm yrt qpo
|
||||
xcu: ain
|
||||
qxl: lur igu bsb
|
||||
pmu: xuk dcl ofd
|
||||
ahv: fbt brg
|
||||
gtk: lgx nrx
|
||||
vrt: yft izj uvk cui mfv oil myo hzn gwv zlh fqn guw vbp wid xhb mvn csd itv cvi fyx awl
|
||||
gcg: vrt
|
||||
ppm: bvv zrw vis dcr wck ryr gdh tph ucp ejz uuh gep
|
||||
nel: ozd fnr
|
||||
udl: out
|
||||
gkl: knq txi jmk xee
|
||||
vvj: btp pjc wct
|
||||
adp: cxr vtp daz poc
|
||||
zxj: jui gcg zqy
|
||||
dka: ifs laq qgn jlg
|
||||
bhl: xpu uos
|
||||
mzw: jmn xfg
|
||||
ycr: qmf hgq szd czt
|
||||
zfx: dbo ain scj
|
||||
jax: pbm bxg cel cyc hlo
|
||||
yqe: jnd uqb hrd
|
||||
lyd: dml php vin obo
|
||||
euq: uoi ece
|
||||
hzn: wct
|
||||
gwv: uut tky lte
|
||||
wgx: sta xee knq
|
||||
xhd: phh ael
|
||||
axk: tcu uqb
|
||||
ece: sgu fbt
|
||||
waa: jaa
|
||||
jaa: ftq lup awp
|
||||
cje: xmq pvm
|
||||
lln: bbz qff dkw paz htf fhv vrp jkx ihm bud jef eej
|
||||
bvs: pbm cel
|
||||
zow: xay wxl
|
||||
pvm: fnr you vrt ozd
|
||||
dbo: knu
|
||||
vbc: pld
|
||||
xpp: iwh qzd gye
|
||||
gep: fdl
|
||||
qqj: xhk bsb lur fpb
|
||||
wpo: fdg
|
||||
qgy: sid qgh
|
||||
dne: oag def
|
||||
oap: igu lur bsb xhk
|
||||
bee: oxm uji tpb jgf
|
||||
dxd: rus thb
|
||||
mjp: jgf mkp
|
||||
ytc: brg yql sgu fbt
|
||||
zlh: krd kvi rhq
|
||||
wcx: def oag rtp
|
||||
svr: qlv lln qwc
|
||||
ola: sta xee jmk txi
|
||||
qwc: jkx ihm nww sbi bud fed jef eej bbz qff nfj paz fhv vrp wdr
|
||||
gce: kzl ogv
|
||||
uxn: phi bcz
|
||||
vnd: fbt brg
|
||||
xee: uni hkq ljy qlf aeo
|
||||
zaz: cmi
|
||||
gpt: yfw
|
||||
dkm: gaq fac aaj zaq
|
||||
kjq: sgy
|
||||
oba: qgn jlg
|
||||
slg: dir
|
||||
fvb: xhk bsb igu lur
|
||||
csd: gpt otp qwo
|
||||
kkp: dij pbf
|
||||
osk: xpp rys
|
||||
hmf: pde luh dkm
|
||||
uwn: lkd
|
||||
crd: ikt hnn fzl
|
||||
acm: jlg qgn laq
|
||||
utb: fnr mwu you
|
||||
lcp: rbi
|
||||
mby: out
|
||||
fbt: tbn iiu uxu sdr wyl uwn xao ltv wpo mjy xso
|
||||
fhq: ynz mjp
|
||||
qhx: ahv boa ulo jai
|
||||
wpn: bpo
|
||||
xbk: mby
|
||||
axi: out
|
||||
rbi: yxq bnw
|
||||
dcr: fjm
|
||||
nxs: gkf cuk qcj
|
||||
rxn: uwp jhu lra ltm
|
||||
kez: ifs
|
||||
ikt: xhk bsb igu fpb
|
||||
nhf: pje
|
||||
lsu: xee sta jmk
|
||||
ejp: oba aaj gaq
|
||||
tph: rnk brb
|
||||
bpo: wmr euq
|
||||
ybr: uhn cqf
|
||||
pde: gaq
|
||||
kbp: xhk bsb
|
||||
fhv: pxk htw
|
||||
lkd: bda mkd agn bhh
|
||||
fmr: shb wtu kul
|
||||
ftm: ozd vrt
|
||||
aeo: szd qmf hgq
|
||||
dhu: ogv apv vbc kzl
|
||||
irh: mpj ysr qxl
|
||||
thp: you ozd vrt
|
||||
bda: alh jly ola zcf giz
|
||||
uzw: laq ifs qgn
|
||||
scb: bsb
|
||||
aeb: wbs hhu nel utb
|
||||
vin: brg
|
||||
rnk: fan
|
||||
sid: jwy fmr irm
|
||||
uxu: slg mli vim srf
|
||||
anr: yba puu zaz
|
||||
kbq: rys
|
||||
jwl: igh
|
||||
vis: amv hpw gte qwd
|
||||
fer: lkv wby rdm bqy ftm
|
||||
kwv: ola jly zcf
|
||||
nac: lur
|
||||
xvu: phc irh
|
||||
luh: aaj zaq oba gaq
|
||||
bcq: fbt sgu brg yql
|
||||
puu: bvq xbk
|
||||
mei: rjp ytc vnd
|
||||
lyf: igu xhk bsb
|
||||
tmc: fbt
|
||||
suv: rzo dzp qig bhl
|
||||
qwo: anr
|
||||
uuh: iur
|
||||
dfl: mzo vii
|
||||
hrd: esz wua
|
||||
eka: min rso qvv yco
|
||||
qpb: out
|
||||
zqy: you mwu
|
||||
evt: lup
|
||||
bxg: dfl fxp
|
||||
uni: oab kbr evt jaa
|
||||
uwp: xmq dju
|
||||
rdm: ozd vrt you fnr
|
||||
gwo: poc
|
||||
dto: bsb xhk lur fpb
|
||||
ofz: dhu fni sgn
|
||||
fjm: bpc
|
||||
wsm: pde luh ejp
|
||||
tmb: amv qwd
|
||||
kdl: bcq ykt lts
|
||||
jxm: ckh hxf
|
||||
dyl: euq avo wmr hns
|
||||
pxr: zqg
|
||||
xsx: yql brg
|
||||
wdr: rss fxl kcf
|
||||
frd: rzo qig dzp bhl
|
||||
tlb: zqy mdb
|
||||
yvn: ynz mjp
|
||||
bvv: fim
|
||||
xjh: oag def
|
||||
jmk: vhi bhv tnt izk ewm adp nhj qlf gwo fcj xhd ofz aeo ycr ljy hkq
|
||||
smb: ahv xkn ulo
|
||||
hbp: def rtp
|
||||
fdl: quz bpo
|
||||
flj: xay wxl
|
||||
mkp: qgn jlg
|
||||
fdg: mkd agn bda kwv bhh
|
||||
mpy: bpo quz dyl
|
||||
fim: yxq bnw bpc
|
||||
mwu: xhb yft myo cui gwv mvn fqn fyx vbp wid
|
||||
yds: hhu nel
|
||||
her: dfo yba puu bag
|
||||
ipm: nki wgx lsu pbf
|
||||
wfb: ulj axk ldf
|
||||
bvq: xyj
|
||||
hhu: ozd you fnr
|
||||
vfy: ulj yqe ldf axk
|
||||
pld: qqj fzl
|
||||
zkn: xvu zfx xcu
|
||||
rbo: fpb lur
|
||||
zzk: yds aeb
|
||||
rdn: bsb igu fpb
|
||||
ril: qmz uxn kde kob
|
||||
foj: fdl
|
||||
xhb: krd kvi
|
||||
htf: osk rcp
|
||||
nrx: out
|
||||
zwl: xwv uhn cqf
|
||||
gyl: out
|
||||
dkw: rcp osk
|
||||
sgu: wyl iiu vqp bpj sdr tyq tbn cfo eff wpo xso xao ltv
|
||||
pbf: sta
|
||||
ytk: oag
|
||||
irm: shb kul
|
||||
brg: wpo iqh tyq tbn uwn
|
||||
dzp: xpu uos
|
||||
ufe: utb nel hhu
|
||||
gpo: jlg
|
||||
ihy: bhl rzo dzp qig
|
||||
jlg: srh tqs bvv tmb dcr
|
||||
qgh: jwy fmr tat irm
|
||||
aiu: out
|
||||
itv: grp qgy
|
||||
cqs: yds ufe ssx
|
||||
mpj: igu xhk
|
||||
pvw: ppm laq
|
||||
mpi: xee knq
|
||||
pab: gyl
|
||||
jef: rss kcf iyj
|
||||
qig: pxr xpu
|
||||
lra: pvm
|
||||
che: rzo qig dzp ybw
|
||||
xao: rqn fak wke
|
||||
nta: vpo xuk
|
||||
rta: lur igu bsb
|
||||
qvv: out
|
||||
fpb: puz cqs ixc fnn tkl nqo jpb zzk zib yun cur pmu nta ybr ril uzn zwl
|
||||
imq: hwj qeg gpo
|
||||
jkx: fhq mub sfu
|
||||
ael: lzl dto
|
||||
wyl: srd bdl mci
|
||||
hkq: zkn czt
|
||||
apv: utn crd sof pld
|
||||
kbr: ftq
|
||||
xwv: iqf lzx
|
||||
cfo: lre bdl srd
|
||||
ysr: fpb xhk bsb
|
||||
aia: dkm ejp
|
||||
ndc: awp lup ftq
|
||||
bhh: ola
|
||||
bhv: poc daz vtp tda cxr
|
||||
uqb: hgu
|
||||
xkn: yql
|
||||
eej: imq
|
||||
ihm: htw pxk
|
||||
phh: rdn lyf nac
|
||||
cvl: fpb igu lur xhk
|
||||
rzo: uos
|
||||
uzn: kde
|
||||
jly: jmk sta xee knq
|
||||
otp: her
|
||||
vii: out
|
||||
fni: ogv uqe kzl
|
||||
phc: ysr
|
||||
srf: bmu mzw
|
||||
fnn: xwv
|
||||
rmg: you
|
||||
heh: knq jmk xee txi
|
||||
elj: frd kbe che suv
|
||||
fxl: dka kez pvw uzw
|
||||
sgy: uqb
|
||||
vns: vrt fnr
|
||||
gdh: hpw
|
||||
bag: pab aov xbk cmi
|
||||
bqw: dml tum php
|
||||
txi: aeo dmr adp waa nhj uni
|
||||
krd: gwp
|
||||
wke: dni wxl jwl
|
||||
ldf: uqb tcu hrd
|
||||
jmn: knq xee jmk
|
||||
ylm: fan bcq lts
|
||||
qpo: ppm laq qgn jlg
|
||||
qgn: ucp ejz phn cmt lcp uuh xje tqs gep foj gdh tph nhf fwn dcr wck ryr bvv tmb zrw srh vis ggn
|
||||
tpb: ifs laq
|
||||
uvl: hlo cel bxg pbm
|
||||
iur: rjp vnd ytc
|
||||
oil: uut lte
|
||||
oxm: ppm laq qgn jlg
|
||||
grp: qgh sid
|
||||
lzx: vns csx saf
|
||||
uji: qgn jlg ppm laq
|
||||
amv: wks uge tns
|
||||
qup: qcj
|
||||
xmq: mwu you
|
||||
fqn: sva
|
||||
gpu: sta xee jmk txi
|
||||
nfj: mwd goq
|
||||
101
2025/day11/main.go
Normal file
101
2025/day11/main.go
Normal file
@@ -0,0 +1,101 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"slices"
|
||||
"strings"
|
||||
|
||||
h "git.bullercodeworks.com/brian/adventofcode/helpers"
|
||||
)
|
||||
|
||||
func main() {
|
||||
inp := h.StdinToStringSlice()
|
||||
part1(inp)
|
||||
fmt.Println()
|
||||
part2(inp)
|
||||
}
|
||||
|
||||
func part1(inp []string) {
|
||||
m := parseInput(inp)
|
||||
cache = make(map[string]int)
|
||||
fmt.Println("# Part 1")
|
||||
fmt.Println(findPaths("you", "out", m))
|
||||
}
|
||||
|
||||
func part2(inp []string) {
|
||||
m := parseInput(inp)
|
||||
fmt.Println("# Part 2")
|
||||
fmt.Println(findPaths2(m, m["svr"], false, false, map[track]int{}))
|
||||
}
|
||||
|
||||
type track struct {
|
||||
node string
|
||||
fft, dac bool
|
||||
}
|
||||
|
||||
func parseInput(inp []string) map[string][]string {
|
||||
ret := make(map[string][]string)
|
||||
for i := range inp {
|
||||
pts := strings.Fields(inp[i])
|
||||
st := pts[0][:len(pts[0])-1]
|
||||
ret[st] = pts[1:]
|
||||
}
|
||||
return ret
|
||||
}
|
||||
|
||||
var cache map[string]int
|
||||
|
||||
func findPaths(start, end string, m map[string][]string) int {
|
||||
if v, ok := cache[start]; ok {
|
||||
return v
|
||||
}
|
||||
var ret int
|
||||
v := m[start]
|
||||
for i := range v {
|
||||
if v[i] == end {
|
||||
ret++
|
||||
} else {
|
||||
ret += findPaths(v[i], end, m)
|
||||
}
|
||||
}
|
||||
cache[start] = ret
|
||||
return ret
|
||||
}
|
||||
|
||||
func findPaths2(m map[string][]string, vals []string, fft, dac bool, cache map[track]int) int {
|
||||
var ret int
|
||||
if slices.Contains(vals, "out") {
|
||||
if fft && dac {
|
||||
return 1
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
for _, i := range vals {
|
||||
hfft, hdac := fft, dac
|
||||
t := track{
|
||||
node: i,
|
||||
fft: hfft,
|
||||
dac: hdac,
|
||||
}
|
||||
if v, ok := cache[t]; ok {
|
||||
ret += v
|
||||
continue
|
||||
}
|
||||
|
||||
switch i {
|
||||
case "fft":
|
||||
hfft = true
|
||||
case "dac":
|
||||
hdac = true
|
||||
}
|
||||
t = track{
|
||||
node: i,
|
||||
fft: hfft,
|
||||
dac: hdac,
|
||||
}
|
||||
cache[t] = findPaths2(m, m[i], hfft, hdac, cache)
|
||||
ret += cache[t]
|
||||
}
|
||||
return ret
|
||||
}
|
||||
141
2025/day11/problem
Normal file
141
2025/day11/problem
Normal file
@@ -0,0 +1,141 @@
|
||||
[1]Advent of Code
|
||||
br0xen [7](AoC++) 22*
|
||||
|
||||
--- Day 11: Reactor ---
|
||||
|
||||
You hear some loud beeping coming from a hatch in the floor of the
|
||||
factory, so you decide to check it out. Inside, you find several large
|
||||
electrical conduits and a ladder.
|
||||
|
||||
Climbing down the ladder, you discover the source of the beeping: a large,
|
||||
toroidal reactor which powers the factory above. Some Elves here are
|
||||
hurriedly running between the reactor and a nearby server rack, apparently
|
||||
trying to fix something.
|
||||
|
||||
One of the Elves notices you and rushes over. "It's a good thing you're
|
||||
here! We just installed a new server rack, but we aren't having any luck
|
||||
getting the reactor to communicate with it!" You glance around the room
|
||||
and see a tangle of cables and devices running from the server rack to the
|
||||
reactor. She rushes off, returning a moment later with a list of the
|
||||
devices and their outputs (your puzzle input).
|
||||
|
||||
For example:
|
||||
|
||||
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
|
||||
|
||||
Each line gives the name of a device followed by a list of the devices to
|
||||
which its outputs are attached. So, bbb: ddd eee means that device bbb has
|
||||
two outputs, one leading to device ddd and the other leading to device
|
||||
eee.
|
||||
|
||||
The Elves are pretty sure that the issue isn't due to any specific device,
|
||||
but rather that the issue is triggered by data following some specific
|
||||
path through the devices. Data only ever flows from a device through its
|
||||
outputs; it can't flow backwards.
|
||||
|
||||
After dividing up the work, the Elves would like you to focus on the
|
||||
devices starting with the one next to you (an Elf hastily attaches a label
|
||||
which just says you) and ending with the main output to the reactor (which
|
||||
is the device with the label out).
|
||||
|
||||
To help the Elves figure out which path is causing the issue, they need
|
||||
you to find every path from you to out.
|
||||
|
||||
In this example, these are all of the paths from you to out:
|
||||
|
||||
• Data could take the connection from you to bbb, then from bbb to ddd,
|
||||
then from ddd to ggg, then from ggg to out.
|
||||
• Data could take the connection to bbb, then to eee, then to out.
|
||||
• Data could go to ccc, then ddd, then ggg, then out.
|
||||
• Data could go to ccc, then eee, then out.
|
||||
• Data could go to ccc, then fff, then out.
|
||||
|
||||
In total, there are 5 different paths leading from you to out.
|
||||
|
||||
How many different paths lead from you to out?
|
||||
|
||||
Your puzzle answer was 585.
|
||||
|
||||
--- Part Two ---
|
||||
|
||||
Thanks in part to your analysis, the Elves have figured out a little bit
|
||||
about the issue. They now know that the problematic data path passes
|
||||
through both dac (a [16]digital-to-analog converter) and fft (a device
|
||||
which performs a [17]fast Fourier transform).
|
||||
|
||||
They're still not sure which specific path is the problem, and so they now
|
||||
need you to find every path from svr (the server rack) to out. However,
|
||||
the paths you find must all also visit both dac and fft (in any order).
|
||||
|
||||
For example:
|
||||
|
||||
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
|
||||
|
||||
This new list of devices contains many paths from svr to out:
|
||||
|
||||
svr,aaa,fft,ccc,ddd,hub,fff,ggg,out
|
||||
svr,aaa,fft,ccc,ddd,hub,fff,hhh,out
|
||||
svr,aaa,fft,ccc,eee,dac,fff,ggg,out
|
||||
svr,aaa,fft,ccc,eee,dac,fff,hhh,out
|
||||
svr,bbb,tty,ccc,ddd,hub,fff,ggg,out
|
||||
svr,bbb,tty,ccc,ddd,hub,fff,hhh,out
|
||||
svr,bbb,tty,ccc,eee,dac,fff,ggg,out
|
||||
svr,bbb,tty,ccc,eee,dac,fff,hhh,out
|
||||
|
||||
However, only 2 paths from svr to out visit both dac and fft.
|
||||
|
||||
Find all of the paths that lead from svr to out. How many of those paths
|
||||
visit both dac and fft?
|
||||
|
||||
Your puzzle answer was 349322478796032.
|
||||
|
||||
Both parts of this puzzle are complete! They provide two gold stars: **
|
||||
|
||||
At this point, you should [18]return to your Advent calendar and try
|
||||
another puzzle.
|
||||
|
||||
If you still want to see it, you can [19]get your puzzle input.
|
||||
|
||||
References
|
||||
|
||||
Visible links
|
||||
1. https://adventofcode.com/
|
||||
2. https://adventofcode.com/2025/about
|
||||
3. https://adventofcode.com/2025/events
|
||||
4. https://adventofcode.com/2025/shop
|
||||
5. https://adventofcode.com/2025/settings
|
||||
6. https://adventofcode.com/2025/auth/logout
|
||||
7. Advent of Code Supporter
|
||||
https://adventofcode.com/2025/support
|
||||
8. https://adventofcode.com/2025
|
||||
9. https://adventofcode.com/2025
|
||||
10. https://adventofcode.com/2025/support
|
||||
11. https://adventofcode.com/2025/sponsors
|
||||
12. https://adventofcode.com/2025/leaderboard/private
|
||||
13. https://adventofcode.com/2025/stats
|
||||
14. https://adventofcode.com/2025/sponsors
|
||||
16. https://en.wikipedia.org/wiki/Digital-to-analog_converter
|
||||
17. https://en.wikipedia.org/wiki/Fast_Fourier_transform
|
||||
18. https://adventofcode.com/2025
|
||||
19. https://adventofcode.com/2025/day/11/input
|
||||
10
2025/day11/testinput
Normal file
10
2025/day11/testinput
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
2025/day11/testinput2
Normal file
13
2025/day11/testinput2
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