feat: day 3 (17:01.34)
This commit is contained in:
parent
ca9aa96fb1
commit
e2a7024ca4
6 changed files with 393 additions and 1 deletions
300
.aoc-cache/3.txt
Normal file
300
.aoc-cache/3.txt
Normal file
|
@ -0,0 +1,300 @@
|
||||||
|
FqdWDFppHWhmwwzdjvjTRTznjdMv
|
||||||
|
ZBJrDVfQcfSRMLjZnjjM
|
||||||
|
cBffPfbrbQcgQJggfVQJBPbCwlPtWFDWHFHhpmmGlGmlqmDG
|
||||||
|
PNbMLgmPgRDgRtMPDdmdbmdmQrTBVCZnVnpCnNHHVZBNVZHc
|
||||||
|
ljvvqhlvshhnrcpBZqpTcr
|
||||||
|
zGhWzFTJvsFttddWbMRdmP
|
||||||
|
hhGdDhfdDhmdnHwtzzRtdzbzQQQg
|
||||||
|
WTTZJLsvLRJCcWJWScWWLtzjwBzBttbBzSwVQjQBtt
|
||||||
|
vLJcLLTRsvsTZPqHGhFHGhhPhfqD
|
||||||
|
dJszLvzvCZZsJmszCrrdFmpppMpDMQPMgmDcDgSS
|
||||||
|
nRjRbnnjlNhblnjtVtQlWttMFPfMfPgDMpBgSBPgBS
|
||||||
|
GWVQTVTnTNhjblQNRsdJLLdTCdzdZLrdrJ
|
||||||
|
RnLJBfmJfmNBHlQvvbdQ
|
||||||
|
grhgrtqgjJhhggNHqvwWqvbNlbHw
|
||||||
|
GVTTsFFjJjVVFVGCFTJDDjhFcZmRMZfnZcncSpMSGcRPZpLp
|
||||||
|
bwSNRNSRzSWnPnJRldMBMQmMlsCcPPCP
|
||||||
|
FGpDqTTVFFprpjLVQMMGtMclcmHGtBdc
|
||||||
|
TjhhgTLpVZhpLDZqrTqZVpBSwJwzNnWNWJvzzNSggwwN
|
||||||
|
PHTMsmwrJMwLJvJddvdHwvcWnnWfccqGnhhfGcDqsnGc
|
||||||
|
tZVlzQZblBgcSqqRhRmzqf
|
||||||
|
CmlgmZlQtFtZNlVZdHLMrMvvCrrvvTTC
|
||||||
|
PrDGBBddprmzddrSqccRgSTpqbsMRR
|
||||||
|
hvLtfFNvvZNfGGfRgbqsRNlTSSgsbM
|
||||||
|
QQQjZHHQjvththFffCHPPzmGrmDzDWrWBw
|
||||||
|
GrjGrpjjCsnwhsGGPwlPTPLPVttPqLVl
|
||||||
|
HzSHHhczRlLTHqqq
|
||||||
|
DbhvFSSzQcZbcFbcQjrJrMJmmZnGJmJnjn
|
||||||
|
mvTDsJLwzlWNDDnZngZNdd
|
||||||
|
BVtPqFMqtvQFqPqjFBMVtRZGNGhfNcfQdpfgnQgNcNgp
|
||||||
|
HBHtPbHCLCzsLJvT
|
||||||
|
nVHVFfggbQVmFFfhLpBpBTrfLBCB
|
||||||
|
cjjRwJdqtwwwNNjcwRMwnLNTpNsGCnLsLGhBhpNn
|
||||||
|
tJqStcRMMMjPwlnvzgQWzmHzlmQl
|
||||||
|
nNSRcDHRmHhhDZZZdBDfWJdfrJ
|
||||||
|
LGrGVtjCPCbbQQQQLvQpbVQZzsqsBMdBqMvZMMJZqJvdBW
|
||||||
|
GCPLlLPPPbTpbCbpLPpVlmrmmrHhHcHnHrHHgTFFnm
|
||||||
|
rQbnBrDTQcdpHttt
|
||||||
|
qNsNpfjLpNLRNqLMtdVsddcmVzdzVh
|
||||||
|
WJfLCfvpWpNLbwwwBwbZFvlZ
|
||||||
|
ZslGPhBWBJbNjmbTmSWN
|
||||||
|
qtDCZcfZtDjbjCQvmmSj
|
||||||
|
ttpRzqtqRLDzpRtDdtPlhhZZGBHGPsGZPhwd
|
||||||
|
WjtcNnMtztGFrsNjcgRHvdwHhhjRwlhwlg
|
||||||
|
pPSpPBPVqJqBCCPvZdHlVGddwdhvgH
|
||||||
|
qpDBpBqPTDLqGLmpTPqbDmWMNrFrrFQnFMNnMNQtMm
|
||||||
|
dNwfsjFLQLFNBhTCTPPTBJhhTP
|
||||||
|
VmVMgqgRVHtztmgqgzgqRzgMPWCRWTpPCCPWPThDdZPCRZJp
|
||||||
|
VMqtMgGHmgVMvmqMMtGMSmbslnQFcsndfjNNsnfscnbddF
|
||||||
|
qbWcqrFNCJGSChvLGv
|
||||||
|
MnslRSpSVsGgGhDDwLvl
|
||||||
|
RjMtfnpmmmjSWSbjrNPN
|
||||||
|
rsCsqTVgfCnQFdCznQ
|
||||||
|
ZRsBvMvmZMGQQmFnDmQzzQ
|
||||||
|
MlGLlBjRGjjWWGRGMlNrLLrssTPNfLcTgrVr
|
||||||
|
vpSBBcJnWnSmcqmcChdcgf
|
||||||
|
NRNPFDwwDbThqTJffZQHhd
|
||||||
|
DzPDNVNbLwPzMLRbNMDjBlvpWjrvrVJjjSsBjr
|
||||||
|
dndGpnWdVnBPFFHTBgGH
|
||||||
|
qCcCmjqNNJDtcJQjqJqMCQJcFTBRZRwBZBHDPRHBHZDbgBBR
|
||||||
|
szJcCtNQqjqCNjjNhdgWfLLdhVWsSVnr
|
||||||
|
NjJLgSLGGCLWvqNqNBvwFb
|
||||||
|
htmVmtHnlZmDVhtmhblmDMHddBRvwwZQQqWPFvFwdvRWdR
|
||||||
|
HnlnHfDsbSTbJzsz
|
||||||
|
JvZfsPsPhRfZZnCdtnmjHVRLCH
|
||||||
|
TzcczTtgqpgGSTlHHVHCGjCdHdnQQQ
|
||||||
|
wDBDSDlWzwwzDqqMtrMrfsfbNvJNJB
|
||||||
|
ThfQTdQzQbgdhdNbJFJSlbBLlmqqHBSHCRHsHm
|
||||||
|
rWBWWPcvpGGwjPPpvpPGplRSnLLnCrLRsRlLsLmLmR
|
||||||
|
cGWPPMtpZDwpMpJQBQQQDBBVNfdQ
|
||||||
|
WcWDRLSzFrRFFccPmnssMrGtmMnnGm
|
||||||
|
jvvgCCTvNqTtJqsnqwPBmspZMB
|
||||||
|
gbVgbvlChJVbCdbtTgjdLWSHWcHSDcQzFzRzDF
|
||||||
|
zTrHgrFWRrWvMpPNBVZZHVfN
|
||||||
|
hdnlltGLtGSQPVLSNBQN
|
||||||
|
CqGGtGwlhlGdtGmbtjtmmvDRFvVFTTRDRbRgFJRbDr
|
||||||
|
DTFpQFrZDFBDFrTNFjSWJsWlWjsRJcslsp
|
||||||
|
zzPqvdqNzvqzfzMfzqmCzzfJsclWjSSRWglgjclWSmcjlJ
|
||||||
|
hfPGwhhvMGCVCdddhQQZQnNrTDQnFrtn
|
||||||
|
DDMFjwVTgVmMWgVpdqtlJnpvHHnslw
|
||||||
|
fFfZzLSfzBfZBZtqJJHsnSsldlld
|
||||||
|
GLcNhRGLZBhmDWTjDTWF
|
||||||
|
FbVcQRVRBFfNFfccVfZcWddnGrrHncWtdHsZ
|
||||||
|
hwGwjgTSGrssZHHTdn
|
||||||
|
LvPvCJgJLwjlSJmSPLvvgGfFBpBVfLLMBQMRRbzMVb
|
||||||
|
rfMCJPBMMCrSCSBGZZqRlRLzqhqh
|
||||||
|
LDvdNmbgHjHgnmnvnHjgDjqlZhZzszhqzWsRWRRNcRNZ
|
||||||
|
dmbvHDdnjDjVmjTmHjJVrfprPCCVtLSMrSpJ
|
||||||
|
fdfTBfNVZffMmdfdhGhcJLJrvnlJvrBJ
|
||||||
|
FFWFWTzWSWtFgPHgRPWTzggpJcvvSCGSGJnrvhhrrJhlGlGn
|
||||||
|
pztFjzRTqWzgHqHWtPtPFgmsNfqbDdwDNVwbmfwbdNsb
|
||||||
|
zCHvDWwvCwgpNRCWWHttCwvNPVTqrRrVbbsnbqQPbVsbPrqG
|
||||||
|
jBBcmZBGmBSSJdmhBVbnnQrVbVqqVPbhbP
|
||||||
|
ZfJBmLjfJZMcdZmJffGMtHtwNCvWwwwztMzg
|
||||||
|
rgFgllfdpFlTHfTnfnNPNtPBBVtpzmVVPmmP
|
||||||
|
bLSSbGhGWSWmLzztcQPCQC
|
||||||
|
jvwhhwRwbwshjGhWwsRRTFflFJFzfddFrHzTrJ
|
||||||
|
GSwgSdwfvdfvwgGwBLdJbjjpmFjSTRpqHmRrjptrqt
|
||||||
|
NDMVMCsWQVCsQFjFTHjVLqjFrp
|
||||||
|
PzWDDCNNlCWfbhZZLfBGwl
|
||||||
|
clFLFpFJcVmmWWgWWcWTdwZqCZCZqDqDDSwvwrdHCZ
|
||||||
|
GGLfGtbfMNbbLGtzjBNnsMjjZCwDvQZHrHQvDHHHHHHrrNHq
|
||||||
|
BthbnfPGMstmJgRPpFRTLL
|
||||||
|
VRcdVRPTgVTLVMwmggJBwblJFlmb
|
||||||
|
CqDDQsjCCrnnnQQtDcrnGCssJZNvZbvNQmZwmZlbNbwFNwmF
|
||||||
|
pstjcqrprsHrfDpnrCnHCzRhSMhMMMRVPLMhddfhzT
|
||||||
|
QNDQThccDghdcLLgVsrVLVlMGM
|
||||||
|
BbbWpppFFpnfnFbBBPRMTJMRsGlJGlJVLf
|
||||||
|
wpnbmvbnSwSnmzHHzwwhQqTctNCcqdNqZvhQjj
|
||||||
|
lwCLwLjzLhLHCvwjGCZJbQSHdBQdDdbDtdSQ
|
||||||
|
pnzcTVsszpncgFdJpbtDBDttDSJS
|
||||||
|
zTPcRrfzgzCCvGRhLLqW
|
||||||
|
BgDbztvdDzLZZwMbDDcFHQQJPLWWPJQJHTHF
|
||||||
|
jfpNqSrpCqNfNSpjCqSqshNFRQJcJWRRFssgWRHWWFWHQJ
|
||||||
|
mrnNNgNfMZwmDtZw
|
||||||
|
ZrrFPQsQPRLcvPJvhg
|
||||||
|
HpmTjnBmDDDwqtVcHNvJhNVRhgvh
|
||||||
|
tTpTGfnttqwnqQJzFdzfSdzSzr
|
||||||
|
qVVZqfVNdnBZMNzNnPzfMqbzJvFSjSllvjBwrvrvFrlsrjJs
|
||||||
|
LhHtDTmWmWmGDhGLWHghHLCwrwRjjsPJrSjFjFrFClvrww
|
||||||
|
mDDgtcLcmtTWTTHhpWLDHhDNMqVnqfdqbZdQpqVbzZVPVb
|
||||||
|
WGpVMtGZplgHVWMtZpZFHJjndvFdjddJhnjLHF
|
||||||
|
DTrRcSSccfzcCPDCTnvJvjbrrhjNvqjqJL
|
||||||
|
zczwPDTmfZZtgLwWlp
|
||||||
|
sTtTpvMjpBdmTlhlBTdvsvdncmVcVVVVHzFqVnFfqzHzWV
|
||||||
|
GGwQRZNCRgDgsDDbSbSgfGFFrHfVHVVWrHWWcVFF
|
||||||
|
RZRPgbNSJDsTsplPLsvd
|
||||||
|
GrGNGhpnPFFBfCQCMwrVlwTC
|
||||||
|
PPWHmmSvSvdTfJvJVVfCfJ
|
||||||
|
RjWDmDdDbjcSHmRRLRRHjdDBsFFbBngBzhqbBhpqBPgFFg
|
||||||
|
TfdNjJjmShGcWvQNQqcNFN
|
||||||
|
gsRZRMqbDpsHHnZnngMZFPlzQRPWvRtPwtRWzlPv
|
||||||
|
brgMMgZCLsDpHGGjfGJVSCqddT
|
||||||
|
BdSRjHScGMVjGdcScwLgqQqphNqNDqBBQW
|
||||||
|
zzQClvtttrwqrwgCwp
|
||||||
|
PQJTzvJJTtJQlvQftmfdmdmGRcSdcMSGdS
|
||||||
|
PjPwvwlfGlGCGwppWBsWQVVQnpCQ
|
||||||
|
FRSHzMJdrfRnpmpWmp
|
||||||
|
TzJTMNNrHLJfTJccvjqwwgGLZLLc
|
||||||
|
dCpjsGvcsLvszTrRRlRrDJ
|
||||||
|
hPNqqpbhFlrDnPrRnz
|
||||||
|
SBbphFNtLvvSfLfc
|
||||||
|
zTFnnZzqrjFVnZTrtwMDptbpMwMMBDzb
|
||||||
|
JGPCjWGgJjPWGJjNchmbBRpNNDsRsNBbbRBppD
|
||||||
|
JWCggWSCmhCmvWHTQrTQfHjdVlQZll
|
||||||
|
WWbrmZjbmjpbWSmcWHSbLddwvDggLFDhFrRlFFDw
|
||||||
|
qPMVzTPQVfzvVzBQTMtRswwlDdhDghhsfLwdhs
|
||||||
|
MMMPQBPJPzCVzvzQVtBJJMzCbmSZNWbSccHHmmZpWSZGZS
|
||||||
|
BgmMgjlBMjHPssBnwphtFwhSVVmGGwFS
|
||||||
|
rfCqQQrfvCQNRqCnCthFVSGSGtVS
|
||||||
|
TrzLNvWfQvrWQZNWsnHsssBBcZBMsDdZ
|
||||||
|
CtJCddDHDDPGHCdNVLPBdLDbbGFbwZSsSSZrfFFrGbGlsb
|
||||||
|
gvjpnvhRphjmpmSfsTSnPZZrZfrZ
|
||||||
|
ghRRRhQgWvmPWtHHtLdMtH
|
||||||
|
qNgQgNgNQFVbqVQDMRZMDRBHHJHRFh
|
||||||
|
jnTTPzWZCzrWzGRHMrhmBvJBSBBM
|
||||||
|
jtCGWnCWPTsTzlctWPtqLbwqZggNwgLbwdVq
|
||||||
|
DJgJDgFqCGlhFDGDCWhqCwRfpbcpbsgsVscRpwbwws
|
||||||
|
SmLZQmMVvLbsbssNQsQN
|
||||||
|
tHZMLZZZMVtmnMHWDHjWlGhFDqCl
|
||||||
|
PZRmjlDBWRBWBQMdQQBDPRhfzSSTTnfFnfzFpVFjfSVFgS
|
||||||
|
wwHCHLtLwnzNHVTZZV
|
||||||
|
rJLtZtLZcCrvJwcbrGLvrcDQDhPldhGdmmPRQhhRBlPM
|
||||||
|
zShzVhbqlbpbRNRscBNwCc
|
||||||
|
DfmFWnfmnMFDdngdngvJFHgQQNwNsHHCQCwNTTzRcN
|
||||||
|
FFFZMWWZZJMmJJMFFpztlPtSllLVphttGZ
|
||||||
|
gWhGwmwQGhVwGzBMnDFmdmDDLbCnLn
|
||||||
|
tRRHNHHlPHPfPltllNNNRsVPFrTrTbrMMTTDMdLFCrFdPP
|
||||||
|
HvRvvHNpNvfqSshwqwVQZWhggwhw
|
||||||
|
jDDRDVqNsRMMVFjFbtzpBlpllCBlhSLHSStH
|
||||||
|
JJWZZTwWcmZCzQShHhzhhm
|
||||||
|
wTrgvTwccvdcfvJvWJrvJTNzNMfGNNGjFRsjNDbfVzDs
|
||||||
|
cVWPPThWctcFRdQpzLTzBL
|
||||||
|
NNCqwNSrsDqNSSgLgffDCNpBdRvvdpmHRQvBdBqvdzBB
|
||||||
|
CgbffsDJsSsNgbgJrlcGhGtjnWcJPncjWL
|
||||||
|
RwwTGRjGlwWNgjgfQVNmjj
|
||||||
|
HJPdLhLzhbtbdLPLbHHJLdcfBffBgrFQVZgzvgBfvrvvmr
|
||||||
|
cmchnhtPqLSJJbdPLntlsDGCTWWDsDRwWWWTwS
|
||||||
|
DDDBsPGPbwhDcDcj
|
||||||
|
rgfNgCmHMvrrttvtfmNLgrLcQQJTJhcnjTQHcZlwlQHnwj
|
||||||
|
wgfLmgFgWdBFzSVR
|
||||||
|
RwsbssJjnbJwwsGPPdDLfTDLLLWvWNDGDpWD
|
||||||
|
zVtHqzHHVcBQTdpSgvQDSpTS
|
||||||
|
HHhFCdrrHchmrhcmwsjZwRwMJlshJJJZ
|
||||||
|
BdQgtJMLBqshLfNhbccfFhffNc
|
||||||
|
DnVWvvpvWvzrpwRWDbTvbTjTFGlfFSfNSFHGmFGNFmnPlmFS
|
||||||
|
wDRDZzVWVjrRVjzrQgQdbgCZLCsCQtbd
|
||||||
|
jQSgWjQmFFvHmjHWVVpZbGlbGlfGpbfGGWpf
|
||||||
|
zBPtTqzPBcdwrzPJwqCztTNvCGpbGfDnfhZpNGGZGZbG
|
||||||
|
MTzPtcrcwzTttdBJwPvFVHjMLFHQMgsSLHvs
|
||||||
|
BHtjmmTtmDtHZjMMdNzCzCWcWZsZdsZs
|
||||||
|
JRRJVPLwQJrVMPJLVVwChpRRhcdzcNzhzChNdW
|
||||||
|
SrFwfGwGSnnGPlBMDtjbllggBn
|
||||||
|
rsMDTrgsBNBgMgDBhfhDghrtcRWJttcmGRWLGQQLJRrqRL
|
||||||
|
lnVVjvPbwpndvVwlVCjVwtLcsmLLqWWtttlsmGGcmm
|
||||||
|
SsjVSCZbgTBTfNZH
|
||||||
|
wlddvlldlBzqSmStdqmmngwgDCgrpMpgCngrMCfn
|
||||||
|
jVLTHGRHjjvPGcDrfNMbnpngVbpf
|
||||||
|
RJRTTRZJLRJQZcGGHLhHvTdmBFWFtWzqdWWQlFzqBFWt
|
||||||
|
HDgZHpZSDpBQdRpHHRsDBNNzTvfTQqcqNNTqTqPQvl
|
||||||
|
rnMFFMFJwmNgvmfTzcfq
|
||||||
|
CWMtjCWMCCLWrWVWJwBbpgtRZSHbddZHBDDb
|
||||||
|
hjLWPZJpZptwJghSfgHTMTgRMR
|
||||||
|
lCcrblcnlzqDsvbfffTRSMnffjHTgj
|
||||||
|
sqscDcblGDDpWPwFGwjLLp
|
||||||
|
plQtRqRlGpPPPLZtmtpttRtJjHJvddLTHrLHJJjbdHvrrN
|
||||||
|
gcMgTBWBCTczjnvNznnbgH
|
||||||
|
FBhSwsWFWDhQZQqTTZllsT
|
||||||
|
WsVttWDbvbtRjDVtDbDbJjrjFpCCcBrSCwrrjwww
|
||||||
|
nzHqGNMfHqMMwJLLsNBrNcBS
|
||||||
|
qgnHflgzHlqlZzhnzssfzbZtmVvmTQvQdTtbbDbTvv
|
||||||
|
RtQCBbJDFhJtQtZtCbMnVnPVfGPpJVJWWmwJPG
|
||||||
|
NsczRsrdrNrjlcSTGGnwmGmnmVPWwmVT
|
||||||
|
SHcljRHzNHHjSHcrgNslcczgZtDgMDBCvQQbhDBCbFBCFCCF
|
||||||
|
dRTFRJTRTgJzSSJmzJfN
|
||||||
|
jLbQllLvvvrQlLQBrvQmFBGzCFtPSMmSGCtPPF
|
||||||
|
QjsvDvqlvrQQvnsLjDWghTwZWcccFdRVpc
|
||||||
|
bWnDbMJMFbhZSfngpfpd
|
||||||
|
HjcrlvjRjrjlLqTqpwQgpfSQgghZgvgf
|
||||||
|
THNTjClLHDCCpWmbtC
|
||||||
|
NpBNsnFMLBcPMZccbQGblWRgGZmbRWdW
|
||||||
|
CqrJTHCvDfrfwwJHRBvRGvgQmvmlWtlR
|
||||||
|
rHzJJJDDwJCqjHTwBLccMpFhshnSSsMz
|
||||||
|
bqVqqrDMpLFbLpJJQDMjbpZndwsvwHHswvnvnnZslG
|
||||||
|
hgfRghhBWgfzBgZvncvcGvWrnZsG
|
||||||
|
fTSSSBtTzhPththRrrCBzVLqMMJQjVJJCLjFjjqjJq
|
||||||
|
pQlCJQjVvVGGnjNqFbFP
|
||||||
|
wTqtmSmTBhstmstTmWRSdLdfPdNGnhGhdPNnNnrN
|
||||||
|
mzTZBwWTcSTsTmZRRmzTsVMMVMQMDJgVqqMgcJlVDl
|
||||||
|
vVwCqdCDvMrlDJCqrDMrPdTFWwZNbRcbmZWQbRQZWZcQWm
|
||||||
|
fGSfhfjHGBlhSpRmpZFZNbQWjj
|
||||||
|
ntGlgSSGgStVqdMCDCJnqd
|
||||||
|
TlTRCrhCpmnCRtMRRWbvMBfwBB
|
||||||
|
DVdQcsccdczbtQBWvmQBBW
|
||||||
|
PgHPNcmcqqTphlHTCGrT
|
||||||
|
GVLCBmdLVtlrmqGCqrTCGnjGSfwzNfPzfNNGzSSw
|
||||||
|
rMDcWMJsDWRvRcsZPwpJpSzjwwfFjfjJ
|
||||||
|
hcsscQQsDcWbHbmLgTbVgTmlrbgq
|
||||||
|
VwJndPThQQjdvbrb
|
||||||
|
BHlzFFjlZGBBlZBDFSmllfGggLNbNvggtCgNrLQLbfvbfg
|
||||||
|
SHSHHlZSGZSDHGzHssGmnjhjphJPPpPwnsJRwPMM
|
||||||
|
QFFGpfGtwgtjwvpwpGGjjBHgqzNNllHRlRllNdBRJl
|
||||||
|
SWVDWVrDhnWhnqVnWPrhcSldBJPsRMMdPHsRdJHRMMBP
|
||||||
|
SWZZcmnnZnSCLZDZftFFCvbfTTqTCTQF
|
||||||
|
TvZBTFZpshPggBNN
|
||||||
|
bbctWQDjcnwtwDDDllQzLfgsPzqgrsTPLshWfP
|
||||||
|
bwRbQRnmDwtbTjmwRJQRQVZHpCpHVdvpMHZZMHZJvd
|
||||||
|
CfqzMCGvGqNrCFFNwcMBbnnbbtBbDStw
|
||||||
|
sJjsTjvVjLVlLLbtHSnSSwQsDBSH
|
||||||
|
dJlvLVgJTRVPWWjjggCzhNGzzGZdhqrdmqrq
|
||||||
|
zGSHWGjzpRsWVfsNwZ
|
||||||
|
BmPCLzPlJBBvQmLFQrwwrVtfqtqZtsvwfR
|
||||||
|
hLLzlmmBPFFLJMlmgDTMgdSGbDgGHbSp
|
||||||
|
ppngVjZwNZwwVJjjnnVVJJJpLrsgmsmrbctsLcLmscDggDsL
|
||||||
|
vHvRzRPvQPPRqPTlffRTrssbtqmmtbcMcNrDrrtD
|
||||||
|
CHWdWzWQzdChNVZjZZwB
|
||||||
|
LjVFhwjbFggMdVggTVMNRWRGWqQWtRNWGlQW
|
||||||
|
DCzCpJppzJJDScFBzvBGnRWGWrNRQNNWGtNGqB
|
||||||
|
vFJSzDSszzzccSZHzDDJmvSJhVwLjfVTPZLfwLgjThLZwhVh
|
||||||
|
FMSSNScRlSGzfqWbqqcpWBhpmW
|
||||||
|
TrPrnQNnJwtQpmmpmbbL
|
||||||
|
vwvCsJZZnnwVnVHsfNjDRgSjRzgRjZjN
|
||||||
|
CRhsghlqlvjhPslQdrMndMTWdPnTMJ
|
||||||
|
tcDNFDpDSDwDtHrSDwDtFmtpJzWTnzQJpzQGnGWQMWnnTGBd
|
||||||
|
ZfFSmSfwcwcScZHtVRhRCqLqCfrVrrfg
|
||||||
|
vHPsBzvRvhCzbwbnjHLVmVbW
|
||||||
|
ggdlpZNdZdflWTGpVMjgVbqjVmngnVbr
|
||||||
|
lNpfllFGpZTtclDZzSWQFCWWzChPzQhS
|
||||||
|
ddbJQGsgJcQccCjjTC
|
||||||
|
DDflHqNNNjCCPNbT
|
||||||
|
LFpLzfzqHzLbLvtndJhs
|
||||||
|
mHtbGdwzmtHZrtrHtHGwrmtcFgBFRsBFcdglRsfsdgJBNN
|
||||||
|
WvpSVjCCTCSPVDqTVjLqJwWRcWsNlgBcBlfWBRfl
|
||||||
|
qDwjvqjVTDDLSPpnjqVnzbhbZbrGMmHzbMHHhh
|
||||||
|
cMrrVsdtCdVtwqdHgLjPLFLfcfZZJB
|
||||||
|
zGSlGGvpDWWvbSSNTggZPPTTJLZPjPzJ
|
||||||
|
bNQDWbjlGSGNnWGblbQDQCmdqhsMtrsVnCrtnwdnCt
|
||||||
|
WZSnCCMMdMMMSJMSVZmmFqVjqjVwVjjc
|
||||||
|
zvzTlQQQQTNGbmQTjqBjcwwwGgBHGwqB
|
||||||
|
mthbtmlPhTrNzNhhPLzlPzWfWPJdRCWspPWSSRsWSnJp
|
||||||
|
nmqsjNFqNLcVlPNvRdvPPv
|
||||||
|
MrggHrMpbtTpgpDptlQRJJldVRPBsDQvvV
|
||||||
|
grgrTzfTGSFGsGSCLc
|
||||||
|
hjdjCfQCLdQcWMfDDQhLsLCjqvVqzzZZprBFbzVdvVnqnBbd
|
||||||
|
NTglmJGJRnRZVrVvFr
|
||||||
|
gPGgPJSTPJtHncnjWDhDMDhP
|
||||||
|
ZWWqBqqmgFFDMTTWDMwwcW
|
||||||
|
ddGPpJQPprRSCrQzJPJGjHDvssMTDZDwcHhMsHsMHS
|
||||||
|
zNRGrCRRCjPpdGQJNglqntnbtgNBZtFqtt
|
||||||
|
pslQSspQrqHfgMRl
|
||||||
|
tJBTjsTLGMBGMFMg
|
||||||
|
tDwnhZdnLdZDwczzcPvsVvVW
|
||||||
|
nZnMSDnGtnzmzWZZcMmgMcHwFFVHhHwbHsVrwQhVhF
|
||||||
|
dlTqNqfTjdJflCppCQQRHVwFRJrvJsFVQs
|
||||||
|
LNTqBLPprpLLzWtSnMZBMDGm
|
||||||
|
PBjlPvvcJlJzwqjnnjLnwm
|
||||||
|
dMfdpVfVhGVfVpVTtWWbzwngLMLwMRCmgmLMmsww
|
||||||
|
SWppdTrprThhrGVztcrllrQJZNlBZlrNZB
|
||||||
|
TTrNcjGNWDdDPDpPjDPNrbmFPfQSFmfSMCmCfSmSSR
|
||||||
|
sshhqshzBVnzHgwCMbCwcfmRFmRMbm
|
||||||
|
gHVVnBzJcBgVhtZZtgJhpGrGNpvDpddvprNGrlTJ
|
27
Cargo.lock
generated
27
Cargo.lock
generated
|
@ -17,12 +17,22 @@ version = "1.0.2"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
|
checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "aho-corasick"
|
||||||
|
version = "0.7.20"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "cc936419f96fa211c1b9166887b38e5e40b19958e5b895be7c1f93adec7071ac"
|
||||||
|
dependencies = [
|
||||||
|
"memchr",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "aoc-2022"
|
name = "aoc-2022"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"aoc_proc",
|
"aoc_proc",
|
||||||
"color-eyre",
|
"color-eyre",
|
||||||
|
"regex",
|
||||||
"time",
|
"time",
|
||||||
"ureq",
|
"ureq",
|
||||||
]
|
]
|
||||||
|
@ -272,6 +282,23 @@ dependencies = [
|
||||||
"proc-macro2",
|
"proc-macro2",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "regex"
|
||||||
|
version = "1.7.0"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "e076559ef8e241f2ae3479e36f97bd5741c0330689e217ad51ce2c76808b868a"
|
||||||
|
dependencies = [
|
||||||
|
"aho-corasick",
|
||||||
|
"memchr",
|
||||||
|
"regex-syntax",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "regex-syntax"
|
||||||
|
version = "0.6.28"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "456c603be3e8d448b072f410900c09faf164fbce2d480456f50eea6e25f9c848"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "ring"
|
name = "ring"
|
||||||
version = "0.16.20"
|
version = "0.16.20"
|
||||||
|
|
|
@ -13,3 +13,4 @@ color-eyre = "0.6.2"
|
||||||
aoc_proc = { path = "aoc_proc" }
|
aoc_proc = { path = "aoc_proc" }
|
||||||
ureq = "2.5.0"
|
ureq = "2.5.0"
|
||||||
time = "0.3.17"
|
time = "0.3.17"
|
||||||
|
regex = "1.7.0"
|
||||||
|
|
|
@ -1,4 +1,3 @@
|
||||||
|
|
||||||
use std::str::FromStr;
|
use std::str::FromStr;
|
||||||
|
|
||||||
use aoc_2022::prelude::*;
|
use aoc_2022::prelude::*;
|
||||||
|
|
59
src/bin/day_3.rs
Normal file
59
src/bin/day_3.rs
Normal file
|
@ -0,0 +1,59 @@
|
||||||
|
|
||||||
|
use aoc_2022::prelude::*;
|
||||||
|
use regex::Regex;
|
||||||
|
|
||||||
|
type Input = Vec<(String, String)>;
|
||||||
|
|
||||||
|
fn parse(s: &str) -> Result<Input> {
|
||||||
|
let mut backpacks = vec![];
|
||||||
|
for line in s.lines() {
|
||||||
|
let (part_1, part_2) = line.split_at(line.len() / 2);
|
||||||
|
backpacks.push((part_1.to_owned(), part_2.to_owned()));
|
||||||
|
}
|
||||||
|
Ok(backpacks)
|
||||||
|
}
|
||||||
|
|
||||||
|
#[aoc(day = 3, parse = parse, test_cases = ["day_3.txt"])]
|
||||||
|
fn day_3(input: Input) -> Result<()> {
|
||||||
|
// Part 1
|
||||||
|
let mut sum = 0;
|
||||||
|
for (c1, c2) in &input {
|
||||||
|
let regex = Regex::new(&format!("([{c1}])"))?;
|
||||||
|
let overlap = regex.captures(&c2).expect("there to be an overlap").get(1).expect("there to be an overlap").as_str();
|
||||||
|
let overlap = overlap.chars().nth(0).unwrap();
|
||||||
|
let offset = if overlap.is_ascii_uppercase() {
|
||||||
|
26
|
||||||
|
} else {
|
||||||
|
0
|
||||||
|
};
|
||||||
|
sum += offset + (overlap.to_ascii_uppercase() as usize - 0x40);
|
||||||
|
}
|
||||||
|
|
||||||
|
println!("Part one: {sum}");
|
||||||
|
|
||||||
|
sum = 0;
|
||||||
|
for group in input.chunks_exact(3) {
|
||||||
|
let mut present_in_all = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ".to_owned();
|
||||||
|
for (c1, c2) in group {
|
||||||
|
let elf = c1.to_owned() + c2;
|
||||||
|
let re = Regex::new(&format!("([{elf}])"))?;
|
||||||
|
let mut new_present = String::new();
|
||||||
|
for m in re.find_iter(&present_in_all) {
|
||||||
|
new_present.push_str(m.as_str());
|
||||||
|
}
|
||||||
|
present_in_all = new_present;
|
||||||
|
}
|
||||||
|
let badge = present_in_all.chars().nth(0).unwrap();
|
||||||
|
let offset = if badge.is_ascii_uppercase() {
|
||||||
|
26
|
||||||
|
} else {
|
||||||
|
0
|
||||||
|
};
|
||||||
|
sum += offset + (badge.to_ascii_uppercase() as usize - 0x40);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Part 2
|
||||||
|
println!("Part two: {sum}");
|
||||||
|
|
||||||
|
Ok(())
|
||||||
|
}
|
6
test_cases/day_3.txt
Normal file
6
test_cases/day_3.txt
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
vJrwpWtwJgWrhcsFMMfFFhFp
|
||||||
|
jqHRNqRjqzjGDLGLrsFMfFZSrLrFZsSL
|
||||||
|
PmmdzqPrVvPwwTWBwg
|
||||||
|
wMqvLMZHhHMvwLHjbvcjnnSBnvTQFn
|
||||||
|
ttgJtRGJQctTZtZT
|
||||||
|
CrZsJsPPZsGzwwsLwLmpwMDw
|
Loading…
Reference in a new issue