Day 3 initial working pass
parent
89ff0eda4e
commit
8da7201ca1
|
@ -12,7 +12,7 @@ pub fn build(b: *std.build.Builder) void {
|
|||
const mode = b.standardReleaseOptions();
|
||||
|
||||
|
||||
const days = [_]u8{1, 2};
|
||||
const days = [_]u8{1, 2, 3};
|
||||
|
||||
for (days) |day| {
|
||||
const dayPath = b.fmt("src/day{}.zig", .{day});
|
||||
|
|
|
@ -0,0 +1,300 @@
|
|||
dtddvvhwttHJhwdhJPddhwJGppmGjgpQgTjQplQpTljwpg
|
||||
BfzSzRSVVMVNRMDDNBSNSnfBmbrglGQbmNpQggFjpgpbQlQb
|
||||
ZSBffLnVZdCCPJjhhL
|
||||
RGCZpWWWFlHQQbgvFssg
|
||||
jLnMzjnrnjjNjhrjdwbHscsVVgDVQPvPwh
|
||||
nfJnLMLzjJMtnjNnnBbZtBWBqqbTTTBRpT
|
||||
nddlhBtqTBqTVSlBtmCmVcRVmZggfWbcZc
|
||||
jDjvPrPSNPwrDNRWbbgWCjRRCcWm
|
||||
DzDwSpFrvrvFPQLzQnsqztBthTJnGJqlsJ
|
||||
gssGmzwgRgsNmTsqgDnDJnbDHHhhzFdDDh
|
||||
WQVFjMWrVQrVvVVjVctSSLSMZhnJZPBnbdnhbnHZZBDJBh
|
||||
VCtcccVQLrfvrSlGmfTfNgfmlFgm
|
||||
DsmfsBbNNZhDWsbmWmNbbPDHLFjcctjjGcnZGzncnctcGH
|
||||
SwVQJrjVwpgSVRpjpVRrlTMCFFCLCFFcHzzGMcHrtHHH
|
||||
ppVwTwSwpwvSlSlJTjVVbPhsvvBssWsNfsqWPvWs
|
||||
BJwqwJtqqDDDrGDnPFzPFfpphD
|
||||
TgZscCHQLSHgZcfMzpjFFjzsshfj
|
||||
LcNlTVQCCVLLZTLNvpRtpvBBvRJmNB
|
||||
bDBGQBBCTTNPGPPwPzcHfVHrDtLWLVrWVjjHWr
|
||||
gpssqqsqlMFfLZQWftjVpr
|
||||
lvqqFMRlFcQvbzCNCG
|
||||
fhhMDdPhWMJMWvhhSfwRSGlzFbSFNlzw
|
||||
LcqTCqcgZqjTggVjcwbFRwbDBTzbRGRwTS
|
||||
cHLpZgnCHpQsDdsmQp
|
||||
jwStJjJhtgJStpgwJMggQWqQTNTfNTWfbNNMCCNG
|
||||
zRZnFPRZPVncPGVFRlRmGHCTqfCCPCHHfLfbTQCbTq
|
||||
lnVmFZRZDnRVBFZcrZlhjpggvppthGhphpwprS
|
||||
lcttSptHHllQbMcsrltSQGpvNBzpgWBBBDDGWzvgLz
|
||||
PdjPVRFhFqFjRRCjzvRWnWLBLgbBBLzg
|
||||
hhCCFbPTmjPdhZjhPhZCmTjjMsrJSfHrcmHJrHHmlcJSsmft
|
||||
WhWnLZSSnSzQQhfLLNSfmDHrCFDDHtpjGGtTGQCG
|
||||
gJbJBcMVwJlRRdbwvwJBVtjdtHHTmptpHTCtTFrFCp
|
||||
JwwgvRMJlvJwgqgvqRMcnWWhLPzzsqfnZWnfWWnj
|
||||
zdwTSvzHMvVSzDCtZhtGmbTGhm
|
||||
lcBHfFjjgtsmDCgshD
|
||||
cJPBnqNFnLfHJFPqljclqJzQvSSVWvSnMwvSzSWWdMWM
|
||||
pNJMcZrsZDLDcbcccMpQffHqvgdwdFFmdmqwvqmgmzsw
|
||||
hhnWjTTStRCGSMgvvgvdqvdFjvVz
|
||||
hCTSWhPGttTCGBWMRlTCMSnPBDJpbDfDpNpbbNJfJDJbpJpN
|
||||
lbcQcSNFchhQNqHLLqhLqrMpqM
|
||||
WfsnsszPWfBBVpHdprrpdnGL
|
||||
WTzWfwjtTBzwwBDzmfSSQmmbFZcpQNcbZZbv
|
||||
PwSJSlmtPPgwgmHhPPvRvGHLRLQRBQGCQVGb
|
||||
rnsFDnnfGGRWQRnW
|
||||
dfTTfTFdfrfFFFzQFPJPSSlhqtllNPzgwS
|
||||
MMbTFZrcrGZMDqNStWScDtzS
|
||||
dvWmhQggQvCnfnqPqDnDjnfP
|
||||
lgvdvLClWCQlgdhlrMBBHpGlwbHHGH
|
||||
CQHgQpPdCQpsCpzRwSVRSzRZwZ
|
||||
JbNBbcbrJvbJnqVznwwTzrzz
|
||||
wNbfLvvfDNNBHPFLhddFsQss
|
||||
VVzqvwzpqvzqNVVHGNqjHpNfSQDWdWwJdPWrWccdQrWrrDdd
|
||||
nLcbtBRtBhcnWSJQlJSgll
|
||||
tFbLLLRRhMtsBMtRCRsLCMBVjjvHTNjHHjzcvFFppGHzTT
|
||||
QCPrPWNPlWjGGZqGmvdPGd
|
||||
JgpHpSfphhfpVmBSgnTvdtddGvZVdvddDv
|
||||
LhphBfHpSwSwfHcMgfpmBWWWbsNCjFWsljNbbjlLjb
|
||||
QJmQbRmdfmdSQRQZSJltTltNvTrtDtrlftDD
|
||||
wpZcHVwwMgBpWMVgWpHLphztDvvGvDPlnGvDLlNrDPnNPl
|
||||
McgWFWHHHzVpMgZQFqbjsdjqqRCq
|
||||
JPhLFfMJDLQnjNCvWWpdjjdM
|
||||
crSwnwVnwSRBcNBNjjWCdC
|
||||
GlbTGbsSzrtbmbfhnJQP
|
||||
fDLSWVDRHHfVWHgPcZlDlZbbQhBcZQbb
|
||||
jrmFmprTpFztmddjdjrpvBQlQZGhQbTsQbGcQbcbQs
|
||||
nvqdpmjFnwpLSWlfnVNnWl
|
||||
nZBRbBJzznNNCnJZwnBSCJMcpcTpcwhcqhmsmWMwFWLL
|
||||
jQfvjgtfvPlHHqWpvWThpWqWch
|
||||
VljjjgjQjrTDlDgrHtVCbnJZzNzNbnRNNJZrJR
|
||||
MQtJnttlMLlJQsNhQrVVrFVWRRbbVFdJDD
|
||||
vGjvzmjzgHqSjjSzmSGHTWbfDFWrbFzFfdDVrfRWDb
|
||||
qPRqvTSPggqGgHCmllnCNLtnhcnnsnnw
|
||||
zrlZsQMFrsgQFMMjMCbjVDCTCW
|
||||
NqHNRdBppcJJcTpdmRfHThpdDWDtvbWVtbLjWbttWqqCCbLt
|
||||
mhJpJHTJmBhcJhwhgwzsQwSSlzQQzGlZ
|
||||
TvsszlvnzRRVTqzVrqrjjZGPfQPFqPqG
|
||||
mcNhDNchppWmWSNhdSmSCQNjPFjrfGjrgPFCrgFPgPgrLf
|
||||
SDddWpdMWSwNDmMNwlJRQwJlsVRRvzlsHt
|
||||
DTtggjsFFFTlPJhvctBqBqSRmSMBSRnmnRcm
|
||||
fGfwZdrbHVLdbGdHHwwQGVwBBCMMfvCNRNSMMMSRBmmRCN
|
||||
dGZzGHGVVbvHvHwbzpGbHLrwFDDFTtsglhFspgJshslTDJjT
|
||||
CbzspssWwCPcvvplrfqfDCJrDqdllB
|
||||
LjttnjNTNGgQQJdBrffTwB
|
||||
nVtLSgggjFwtMczhvzpZbSZW
|
||||
HCzCHHvWthWFHhssWCVmnqZrnqVrmrmgnbrqmN
|
||||
wPPGBjQQGwGbSlSLwgnpnrBZnBBmnMNnMN
|
||||
jTTbJlJjPPLPGHHTthhhHcFWTT
|
||||
qRdvvPDrCpzPHzcdrrcRqtbJJgjhgtWjJgbWJtgCFb
|
||||
GTwGwNscLllGTZmGSTZGlSBMnhggjbgtgbtbsgWFFMhbMF
|
||||
ZSQBSmlmzcrdQRqz
|
||||
cSpTRphwwghRfgSScqPpnDqDCjDjJJJJDvDLCvvn
|
||||
BVmmQFQBQVNBVmsWlbQFGBBlCHTJznzHLHvvCnjjNLHJDLHD
|
||||
MFsZZMbBGblbQTmQsFsQMMfPcPcwSpwtStgPphZtctPc
|
||||
QZbbZBdjPBjbQQbZnSSltlfwWvlvwNtNjwFMMN
|
||||
DLVqTJqpSVtfsptwfWpv
|
||||
rcRRVVTSbPQBPrBZ
|
||||
tjSgSjLFSnVjDWRsQj
|
||||
lcdqhfFpqZGpZqznrVRWPrnWRVBsVG
|
||||
FHddNNNHwTHMHvvS
|
||||
qCSDSQlwBHNbgJrHnLJH
|
||||
GRpRpRfnmRWWVWgVrF
|
||||
jhdZjpnvGfTZZQPlCtqQQSsS
|
||||
FMZSGWWBrZjMBZMrBWMGjjZDnCRqpgPnbRwPbFnvvqFnDR
|
||||
QHcpfVVslfdVlQclcctqRgqgbsCwbCwPCCCPwD
|
||||
NLHfLhclmmhdfNNpfQMBmZWBrJMmZWBzMrjj
|
||||
pBMpRgBMQwzRthmzLC
|
||||
HPcJvrvDbjvrFDcvWrHfHfWHmdddtdTLztmtdtfllmNdNhNz
|
||||
DvPFDvnPJLngQsggMGGQ
|
||||
BbcFHvbhhDbbTSvZmwwgJPPlDlZldd
|
||||
prCrNLMNgWWJBdrJ
|
||||
fQMLCfLLtpqsNNMnnfBhcBSVGbhhhcqVbcjc
|
||||
ZchcZZjmmNpgmJtgmM
|
||||
RLrHllWrQZQGlBpbGFGFFM
|
||||
RQnLHrqPLnZHzqjfVPcvVTfCvPTC
|
||||
fMtwjfMwrbjfGrtrpPGrwpNNVNVqcbdVqHZTFNbcHSNL
|
||||
mgzvDnJmnJhFJHSTNqZLHncHLS
|
||||
vRzhzslJFhRffPPQMjGtGl
|
||||
VMMNjWppQVwzNWrZdrrtMCMZCtMT
|
||||
ngDScLcvPPgDPDGhGDPGSHVbHTHmZtTSrBHZbZBmBb
|
||||
LhlglLghnVlplswJjs
|
||||
bGJQZZTQQLJJbQZlTZLjCGQTsDhWFhmshhvjWVFVVrgtDsst
|
||||
NScqwHcwwnnzBwqPqqsmVNhgsDDVtsghrFFg
|
||||
pcrcwnpcffrcBzfbCRLpRLMMRlRLQl
|
||||
hzCzCzpRgCzzzCctNsNWNqsZqZhPqNPb
|
||||
TdBwmdrrrDmvwTvqNsSRssPlsWsq
|
||||
FDBRRHDMTmBfmrmngnpjGgVptMgLCp
|
||||
ZPLLnSPMFGvFZMSvHhDhqHfqvfqbDW
|
||||
GgcppCgBcrQBBgplrVddhDqqqfdHgWdfqb
|
||||
CcCjQszmGBQjrcCwCmCccPwPTPnMPTnMJSMMRZSPJL
|
||||
LcVVcqqSHRLzRnCfNnGzNW
|
||||
LZPPdljlCggMjgNM
|
||||
PTvwlPtwtlJvZTQvbcHppFLHVVTcFssF
|
||||
fpWzvzNgWJBVfBJzWzBVJNzWbZcbHhlbthjlrrPrjZZPHZhJ
|
||||
hRDmGCFDwQnStncrjnccHcMP
|
||||
GmmsGRmFTsFwSCsRQDsCSqqpfvfgzddWggvqdpfBWzVh
|
||||
wjRBFljJGDFwwlGGpBSjGDtwTVtTgHHHsHHsVTVzsHqq
|
||||
CPLNPdbWvbMWbcmvPNdLVqtsHqgCqHChZhhsVsHt
|
||||
PWcPfPvmvNQbbWdWpJjJBDptGnDFjftn
|
||||
mFFmJpDMmmnJFjWDVclsSpcflSsQwSsc
|
||||
HrjNNjHNfVwLNSSl
|
||||
tdZbhjHZHPbdCTvbbhhrGbbHMFmRMvnRRFmmvJMDmgJDJMnq
|
||||
szJZhshbsfZJjbttchPctdTnWnRWVWMMnBdLRpMnBz
|
||||
SrNwvDSwrCmnVRvjpWLBBn
|
||||
ggGmgNFrgSDwmNgrCmtPsZPsjQGsqPcsqqJP
|
||||
gjSWSjJSWrWzppzW
|
||||
MCMzHNGNqHfscsFtrtwscVcr
|
||||
qGHNGNHLCnLmTCHfMMmNTzzldzgJlJZZgJljgTdD
|
||||
QGTQtQzTmdTsGTLcdFTGzdtBBjtwvBBJDvDMHJgjJvww
|
||||
lPlqsZWnDJjZvZgV
|
||||
ShCfCRnWGFsRRRrF
|
||||
lwGtndCrrmGCwdmhzQrBzrHvLVggPgHv
|
||||
fjMjDZJqSDJfJqDNDjJffjZLHPHHFvVFzHBLgLFpFpBSgL
|
||||
MsTZWRNZfJZZqMGVGhhlhhccRnhC
|
||||
MMvncqvcHcSnsdzzgvdfQjpljpQVTdDQDRTRlVpQ
|
||||
wLCrNtBFFHHThRlH
|
||||
bPJtHmCWssqgGPvq
|
||||
LvTLsmDWvTWqTsmqjRTmjwgdwgnMHMMFgdtHmBmFVn
|
||||
rlSCJzCSfpGGlhznQdnwFhtHgBFwtV
|
||||
SGZJJSSrVfCbGJLjPsWbvjRsPTqR
|
||||
pNqVVDCMVMBpqJVdMNHrccGHrtNtTFFFrQ
|
||||
hwmllWbvvbnPvbSvtrFhhJzzHztcTztT
|
||||
WSnbnPbbbvlWlRvnsqqMgLRMjLgVLCJdRV
|
||||
GphVTGVMtQwtJmtCJP
|
||||
FRRsBBsFqRNZNNrgqBdRfCZvbmPgmQzJQPnmJbJmQPJPPmwj
|
||||
RNqsFrRfZZsZWvNqWRFvrBZvWhhCGVplhlWTlTpSCLpMhWMD
|
||||
RZRjgbZHjjhsSnRsZstDRStsTVpFhBqFphMqPPpTFQVMPFTM
|
||||
zrcGJwNNdwJrfNdJWvGdJzdTlTFlqTVPFTVFPPBpqNTbBP
|
||||
WwLdLGfrRLStCZbD
|
||||
mrmTqJWTvDDppTDb
|
||||
DGzBfCzNDzdMwnLlbn
|
||||
FVZPFZFFZPgjmWZsDtsq
|
||||
TpnFTnFRCgRgldMRnDnRcrcdbdPBHbtPqbVcccrH
|
||||
WNWLfQQmfhhSNwmrcbSVqPtbZDZcPb
|
||||
LQhwLQvQvNfJhJRDMGFRlCMDMD
|
||||
vLFTDmjVvLgnNHPphN
|
||||
lMClGCmsRdCnPzCccngCpz
|
||||
dlGZwRsRrRwswGsdSbbZSbVDrVBmDWWWFJrTrFvFTmqV
|
||||
SGsZRqGLWLLtZRHRRcLHGTlJjzgJpjzTpNTNJNWpTm
|
||||
MPMPvFFvFBrPPDPMQMPChjgpNpSNTmmmpNlTDljlTz
|
||||
vnhrvMvnhSRqqLqnfn
|
||||
mGFrlBmFQNQFljhqqqqbmHMsTPRbWWCsLMWRsb
|
||||
wnwtvpwVzDVpvzzwZppnctMLtMPWWCstTsWTsTLffRRW
|
||||
vwDJgZnvZJFqgLBFGqgl
|
||||
QdGltnWNWqTdqQWvWsMJcrTcFcrgshJRMs
|
||||
BzPLCDPzzzzCCLLfCBzfSDmLMrDJMglrcRbbhRsFhMrRJcsM
|
||||
fjSzwwHfSzPzfCVBHlpdjGnZqnZptqQWjGvG
|
||||
VbJZbgVzvzmhQpQWpQzhDp
|
||||
tHPPcGcFBlCctCGtGcBBNlDLMGfMLwWfwwqMLLJwQWwp
|
||||
dCHTPTPJdTBFPdrZjgsjrjnmdgms
|
||||
JJpBvJQBZVvcFqqnsWdWvjsn
|
||||
DCfbDbTtbgfCSHqqNdFMPhPDFnPPDWsPjM
|
||||
bTmzTNCTNmfqTgJQcpLrpZLzVlVL
|
||||
dtTLntTjzTftnmwnqGGQHNmm
|
||||
SWbShCPMBgBRRFSFtRZZmm
|
||||
DlJPCJCgPWhttzpvdjcpVl
|
||||
WdzsNvWMzNsMHWddWCVffqmSmScLPvLPgLgLPplrrPmL
|
||||
BtnzbnBhbwttwtZlmmlgcwSrLgmmpm
|
||||
bFhQtbGBTnjBBbjTtFBbVDzddDDfjdDDqNWVjWHj
|
||||
ppmtpgLLZLCbMQvQQThdtrvPhV
|
||||
BBlHBwHRjHqBzzbHHqjjQdDQTDhPQDvnQlrQDQvr
|
||||
HGjFzwHNczbzRFcGzHGFSJSpspsmpssMLLSZCppmfs
|
||||
MpGrMMMcTsHMVHcvbwwmmcRSmDmDmv
|
||||
zCNptqCBQQLCNLCzbfvSvbSzSDRDSmSv
|
||||
CNNqNgNQJNgQtCqLlllZdZhTrThsnHpVVssPTsGP
|
||||
jhSGcShDrLcLLFcw
|
||||
MVzQvQNZVLHvHPdhLW
|
||||
qzhhQlVbgqjmSjJDsgmR
|
||||
CFzSPCgcsVVzFgzSCsBJwjdwJtNllnwglJlp
|
||||
QrvbqWvvLbmvDMMmbdwFWpNNwwwwptjJWn
|
||||
RZRZZqvvvDbDHCRTGchHFSGG
|
||||
SszgPSPPVltDlqtz
|
||||
WfTdTBdQdFnWBBBhBhNjVJtpNsVlDDDHHJWp
|
||||
hQhrLFsBwdQPggbRgPwRMg
|
||||
frRppMMDMpDnJfprnZhrrhpzWgvvGCvvFzWFvzvVVWFGJB
|
||||
TcmLwTsccqwqbPwsdwqdTPSvBvzzztvggVvQCGWQCLBvCv
|
||||
sswNjscwmqjwSssjdZNMfHHlHhfrnrgnfR
|
||||
JpBJBdmdzZzzpngmbCnlqnNbNM
|
||||
MMTHGccLTLvwRMlRnnQnbblnRnSs
|
||||
vVGtvMcjLVGHfHDrPPWZppBpJpfZZZ
|
||||
FGJtlttPdPtGFldlPRGpJTVzSBSSggHgJjVmBMHjJm
|
||||
rhbvqrQLrWqrWLLfqbjjgNmVNSgzTmNgNS
|
||||
hsffZQqnqCfZzlPPGlRlcwDs
|
||||
HDDdZpcFwHFRFcZqDctpRDHpwTCVwjrBTQTBLBLBJJBjjQTJ
|
||||
ldlMzhlPshPbLrrVrQQCMQjB
|
||||
glzNfWlvbHqSdNNNcF
|
||||
jZCMtnZZHCZwBWMwCwtMmfPFfvHDvzHFLPmFDfvh
|
||||
RcrQdRRdGTzGvDGmfgjh
|
||||
TsQscdQsQNTNqQQpRrRVCCBMMJJWMMVNVjnNJM
|
||||
zVPWhVzLzWBWHZnlqBllqlpRbGNdffscGNdbDRnNSfcG
|
||||
MtvSFQQwMcpsGRNGFR
|
||||
vvTwJJSgmCSMmjVPPJWWhzllWLVV
|
||||
RjdfnJfmbVvVJVFQcs
|
||||
rZDZGBBZVvLZLHFW
|
||||
qPzTDPlVrjNgfCdmPd
|
||||
bcjmQPrnbmVmsLVrLrjmcHGRWlZHHRwHpZRHWWwH
|
||||
nFhqzFqJzDJfvfSFqFfGHWZZHGRJRWHZWdpWwZ
|
||||
hBCtDSSFCTqCCFzSnzMrLNmrMNPTNMQPMmNL
|
||||
qvNBSJVDJGGVSJbVDDVhDbbqPjpWpWzWrnpWvvWPMjnWnpWz
|
||||
mlTltwcwMWTPfNTN
|
||||
CtCwFmCgmcmlRFmFCtRCHgmDJsbBhVqsbBHVDbNHDHJqqb
|
||||
csBFBsLrBGBWcgLcBvRgpRhbwRwlbQwbwQgD
|
||||
DCqmDmtTRtRlhdlh
|
||||
qnCmTNPmmCnSSzmzNzGLzLccGDBzGrBLvvcW
|
||||
FjfBjHnHzPFwhvFFqh
|
||||
bjRpGsNsPqQvPclb
|
||||
NWGGWGrrZVZjsCLmDMMgzgrSnzSm
|
||||
MDgmmsNCmZMWmHCZLrvnLBBjPLVlPVbW
|
||||
zcJGQwJdFRnrBVzqzvPr
|
||||
hTQwhJwcfTFddFdGSfcRQQGFsggsgsHHnSmgsgsmgCnHNZpC
|
||||
BPfwzfsgsvfszvBRbQpttRVpJbJpVg
|
||||
LhTmHLbmbcFTFrWCbFqhFHLHVRpVtQpZVVDVprnDMJtJQnVZ
|
||||
TGWWbTFFGTqlHhqhSdNdNfNSldjjBfjv
|
||||
zCzpWTccHlWcPzMljMttbJfjmlfm
|
||||
DqqQVZZqVsqJnbbnmjbJJQ
|
||||
ZRmDZsSgVmGLsVqsLDFvrcccHrcTWCgWHBCHcCWp
|
||||
cvGlQMtQlPtQWWMlcGsrFwFdbgdbdGGDCDCwdd
|
||||
VChVZNBVjTTfhNTFgzrzrJgSdzgzwf
|
||||
THThZTqZRHZRqNVZNTVLjRCMmQsntQctMnsPmMmMcWtLMQ
|
||||
pNRHrbNlNnRLNpMMMTrcGcGTcccz
|
||||
ZttBmsJmZdjsvTTvvdBMjDhfMGWGDfDfcScjfD
|
||||
CmtTtwvtCsgllNHPPFbLpC
|
||||
NpQcvwwRHvdfRvQsNfBQNvfRhVmVMqsZMmMshjMMtWZtMmrm
|
||||
CGHbSSzFLSSHzTnbLnCWMrtWMtjnZMhZrqZtqW
|
||||
FzCPPzLbPgFJbHSPldNRpgNfvvccgvwf
|
||||
nSjpnnhNchMQZMSScnshshncJCGwHGClwmHPZlJPTVZCwHJf
|
||||
LvtzBTgLWgLPlPwHPLPJ
|
||||
dTBDqRqFzzhQFhshhNhM
|
||||
HjjdPsjnllHsbnnDnbTBzLBFBZLLpRFRcCHRFz
|
||||
wqqWwQhQQMCQffqqhtwMGhpZFRRZvzWzFvBvpvmcRvZm
|
||||
fGfghtNhthqJrQqMqMMSgDdbPjbssDbdSnjCdd
|
||||
cqPwJJnnffBFqSfJFnDDPVplLdglGgLVjzGLdVSzVt
|
||||
WHRTWNHsQTNbzsbCbTsvWrWtjlgVdLgLdvdgvmLjpGlgtm
|
||||
ZMQrTbNHZNsHHrQCZrNDFzhwnMJcfnDhJPPPFh
|
||||
LRCFbjNjbCZDmtmqmRRmLtFJBgWBBpvJMwBJvGjBBvMBgw
|
||||
TTrlfHzccVllZhdQgdGMJWvgWgBndwpG
|
||||
fVSshSVlsfslhsSHHSZtZZNmNFmtmbFCDF
|
||||
SPGCBPDMtbcbCtchSMccDTTrrrTFTrsrMTWHTHFVWF
|
||||
JmnzqVmmwwfpJpmdHRTRsdsTrFdrQp
|
||||
LqwLgzJgnjqLwgGcVbtjDGjcVbhv
|
||||
PQcMvrvMsvmdSPPVccmSJcSpGBWWWbBHfWWnfttJWnWJpJ
|
||||
wDzqhjzmqRzDRwqDzNDbWtjWBBBtGbtHpHnnBf
|
||||
zglRhDqqDZgRNmZQVCdcCPQvvdZv
|
||||
RpVjRgvFjGBNWtBWFDtt
|
||||
dcqQwlqMMsCLLfbgQmtD
|
||||
snlgzsggTzSTSJTr
|
||||
dLHhDdtlMngFcFsFLFzzsj
|
||||
vWRGGRVrrWvvGQQJBRsmQzmsqnffqcNfNcfz
|
||||
vSRVJBVBwTvWTnHphTgDgtMpDl
|
||||
bvvGnnJbfPmfdgJJSVtwwCpTScVfNpSC
|
||||
sjsZWDqBqqMRZsDjbWMVwtwNNcNtScRHpRRttp
|
||||
hzhDqqWDzZzDZzZLQPJPdPnPvlrbGdlnFQ
|
||||
PwWHTwzFvNHsNzmmMwzNWGQrCqCFjpZbpnGqrqnpbr
|
||||
gRVRgJRJlDLSJddDccQVrtZnCqjndnrZdnqnqpdq
|
||||
chhgSSJfQhRRcSSSSBLVfzmzHTNzMNsTNWHMMvMP
|
||||
lftqSpBSvhlDBDlhBSczQGmcFMcMVVFMmGFWsm
|
||||
rHLHTNdggsLLnwLHbTTgdrTMPPmMGWZGQQMzQVQFZQGM
|
||||
gbJnrHHjnbrgLrRrHpBJvSBDDsfJsDtstq
|
||||
dBTtFLTtVmpdLhMprSRSWMRSMR
|
||||
QvJvQbjbCgCQRBhzzRsNWNBC
|
||||
bjgGqQGbQnjGQgnQgbGgjJnDLHLdfPVtdDmLZdBFVVZttdTf
|
|
@ -0,0 +1,77 @@
|
|||
const std = @import("std");
|
||||
|
||||
pub fn find_intersection2(array1: []u8, array2: []u8) ?u8 {
|
||||
for (array1) |item1| {
|
||||
for (array2) |item2| {
|
||||
if (item1 == item2) {
|
||||
return item2;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
pub fn find_intersection3(array1: []u8, array2: []u8, array3: []u8) ?u8 {
|
||||
for (array1) |item1| {
|
||||
for (array2) |item2| {
|
||||
for (array3) |item3| {
|
||||
if ((item1 == item2) and (item2 == item3)) {
|
||||
return item3;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
pub fn get_priority_value(val: u8) u32 {
|
||||
if (val >= 'a') {
|
||||
return @intCast(u32, val) - 'a' + 1;
|
||||
}
|
||||
else {
|
||||
return @intCast(u32, val) - 'A' + 27;
|
||||
}
|
||||
}
|
||||
|
||||
pub fn main() !void {
|
||||
var file = try std.fs.cwd().openFile("inputs/day3.txt", .{});
|
||||
defer file.close();
|
||||
|
||||
var buf_reader = std.io.bufferedReader(file.reader());
|
||||
var in_stream = buf_reader.reader();
|
||||
|
||||
var buf: [1024]u8 = undefined;
|
||||
var pirority_sum1: u32 = 0;
|
||||
var pirority_sum2: u32 = 0;
|
||||
var line_number: u32 = 0;
|
||||
var group: [3][1024]u8 = [3][1024]u8 {[_]u8{0} ** 1024, [_]u8{0} ** 1024, [_]u8{0} ** 1024};
|
||||
while (try in_stream.readUntilDelimiterOrEof(&buf, '\n')) |line| {
|
||||
const len = line.len;
|
||||
|
||||
var compartment1 = line[0..len/2];
|
||||
var compartment2 = line[len/2..];
|
||||
|
||||
const intersection = find_intersection2(compartment1, compartment2).?;
|
||||
|
||||
pirority_sum1 += get_priority_value(intersection);
|
||||
|
||||
std.mem.copy(u8, &group[line_number % 3], line);
|
||||
|
||||
if ((line_number % 3) == 2) {
|
||||
const intersection2 = find_intersection3(&group[0], &group[1], &group[2]).?;
|
||||
|
||||
pirority_sum2 += get_priority_value(intersection2);
|
||||
|
||||
std.mem.set([1024]u8, &group, [_]u8{0}**1024);
|
||||
}
|
||||
|
||||
line_number += 1;
|
||||
}
|
||||
|
||||
|
||||
std.debug.print("PART1 Sum of all priorties is: {}\n", .{pirority_sum1});
|
||||
std.debug.print("PART2 Sum of all priorties is: {}\n", .{pirority_sum2});
|
||||
}
|
Loading…
Reference in New Issue