day 04, clean duplicate inputs

This commit is contained in:
gbrochar 2022-12-04 15:53:27 +01:00
parent 1c208f534c
commit 25eb59e2f1
12 changed files with 1121 additions and 308 deletions

View File

@ -1,300 +0,0 @@
jLnFTjhwFTLFDGDDvLgvDssBJBbVRNZJPPJBGzBNRVJNRB
QWmffSmMZCfWrmHlCflQWfSNBpVBNbPSbbJNppcVVzzpcp
lflrqrWMmfdMlrtWWmZgDjsqwFwhFDsngnvhqs
CNBGwsWVsdWDNCCVvfPLfQfgZHPBvpgf
qhJqJlmcFnhJclllPgZjvpHpvfZpPbLn
lpMJJhhcSMDMMwws
jphtLMfVpjJRjJscMJptssnrwdNwQrNbwNzQTbcNrwQT
gSPPSqGGGrdLrNQGrr
PvWPDvWWCSSBBZPjLVDfhjsLLsDhtR
hlLwDGLNnTrbNdtbdb
ZfsvJbsJTrsttHTR
vjPQJPFcmZjVFZFvbbVcJZJPBBhLMnDBznnGMDLMwBhlmBBl
JdTJFtwHjJTzPMqPccqzjB
rggffSCvNBCbWBWt
ZsSpnnRpLStrZpTDwTVwGTJHDLdH
sZqswsrcRpCrsCsrrbtpbpDlttlFbbpGtj
LhNgNvNNhTQMhQMWhvvhfWhllbGGPbPtlPmFlDbjHHdlmg
ffNBNMhDvQDhvzhBhNTBnSzzrZCZnrsVCSwcnrCC
hHGhjLjwtFGwGhhhhtwjtlhrDBQrRBHczRcMvsBcRrDDMH
TTfbZdZbPbVCmCdmnZmCVdfrJBczMrrznvBvQBzzzcBscn
fdbPZTVVfSdmbfdvjjSGljhhtNGGhL
fMrGQbPrbnfljjzVLQzNCzVv
WcDqlSpctSJNzSFJLCzN
hBBWcHtWgWDmZlwwrsPrRTRTMrmn
ZJTVdgpzPpLVVwZgPzTPLwgWdhcWhSQCbcSbBtSWdSWchb
qnDGnNjqDqNlqsCSWhMtlMltWSQB
NnNrFQGjDRgLrgrpPr
nCrhsmVrlrzsTvsnVvmTTlpvPJPWWMPJWWPCJMPNPgPJMjJj
ctDqBLHLRLBSBqFRDBFqFFNGgjjrGGMrWftWJPGgwfGN
HFcqZqqdcFQRQBdrlnplhspQlTmmvlph
mllQMvMTMMdNNdTzTGmLgWjBgGtBqWHhGWjHtB
PPsbbZPCVfJFJRJZsBHjjHhHcjqSSWBt
wCVJFVRJDDpCPqZlTlwQnrvzmMdmml
JfCJtCwfsffBJmFmgFmFhhdwgV
lzHzsSHvSRlDRjlHTgqVVmmVPZqqmggmqS
GzNNRTWvbWGvGQtfLnbfMbJfsC
FnPrwqrFqsPrrsrwqwnbZFPwBQMhhdBHQZhTVBMdDHVhQQVh
zlLWlLvLgtgbMdhfVDdzfd
NWRNjLmWblGFsssNnSwPsw
gnmCjzwnmCPTPhBwPjzBgqPjllJJSWlhfhQDSrpJRhDSlfJl
rLHNHrLHVNbVHMMctZFHsbcsDSDWpSDSGfSRsRWSRllfGSSG
NNtdMVrLNdZNvLvLZrzCndqBgwwPmwgjggBn
tGSBRwwStBftfBHRScHwfcrCgQgDnjQhQDqgBqgCCDnnqg
LNlbZmlPVNzWlLZVFPQqgDTQTmjqCQDQqmsQ
bpZNZLNNZlLNLZNNZbLlbLZbwrwSHGJSwrGwRtRpcjjtMttw
JvGNPWhLPLBffwhGCrbgnFDbgcZwbVnb
TqzSTlQzdHQQpTTjSddHTSnbqnZDcrrFnFVFVbVVcbhc
mlpdjhhTHWBmWWBJvG
ScrppccsbMRRvltvrvrj
HRTVTnDwDLJJJZwwVQTmNlvqBNtvWBBBQvhNfqlB
TLJdLLCJZHJCVHHTwRdcsGpSbgsczcdcgS
tffHzJctHsSHHHGTtzvttZFlZZhVjglVmgDhDdjgjS
qCBMCqbpqfQPMBPpPljQVDDZdddZdgFlDV
fWwLfbbWNzGGrzvWHJ
VnNFqrrJdfQhCDFPhttD
pGpTTzHmRTNTTLRRtbBBbzhPtbtbPPBt
HLpHpmSRHTpllcLTSgVvNrJVfJvqMnZN
tHzgwJCgzZlLFLnWJTnc
NnNnmsMnBDFSFWdqssFd
mDMBNmRRjjMNnvrPnjjRQQvfRgwpgHHpppHhZbzfCpbHtH
TTwBnnZwBnNQZZWLWTTFNFbsCGrGFCNvDDDGFj
lzPRfVVRMclPRMRcbFDjfCCGvvsdGCDd
hSmmlMlVztlhRlVbqQpLnWqSqLZZwZQT
zzVTcqmVqzdmhZJbFpQZQQtLLWLLbp
TGwvGgTnGTRHLNtMftWHNbWf
vljTGwvvlCljsgSnCBslDPPJrPdVzrSmhdqhVDPP
LzCGCGLBGNlLmFFmmSSBBqSc
ZJfbdfbWtbgVlblJtjcFcqTmFqqjtFHtjj
QgZhZgQVdlfddlWPhfvMCGRGPDMMRvDNGvND
nLdpLJSSnLMwjCDwnQhw
NZGNgmsgPtPTgWqqCGwRbrDCQbCwhMjr
gNqPTqTPttPZqcWfHLlBvccFvhpvJc
GNdGhMMvRBjmMVjM
trcZJJFmCgfZtcrQCfCZSpqSRjBQpQRQBbBqsSqR
JcTmwtTtcrmThLGDhNTThvNW
ZqhmtzzfZRsSfRmSTThMpLNgpgJQThMG
jdnvdHWFvvjFdCWFrvVVnvFDQrJJMpgMJGNLJNJTPPgQGJGR
vnHjDVHBWjdncDRbRzzzmmBsSSzt
VZNZSCPTJPpvNTNsCrbnVrLccbLnnRVfWb
MlqQBlBztFlhQJdFhccbhnRWWfnggfGc
lzJqllwQtmzdHZpvwjPPNspj
wTnCMnwQCQvTTJdfqhdtrrSmhttmmm
LZlZglZBvjgbHHSrHpbr
GWvPjPNGljBzMzJVMwNJMw
CSlChlvPPGvdddqPqSJhPdbNbcMTMTbDbcRNDFcFLMLJ
HWjgngmBZGQgRRNbFRcHbbzT
BmnpnQBBssBsQBnPptSStllGhdCGrS
nhQCnCvjchBBjMNrwbRwZvvSvSWW
qgHlfqblVbPfVqlbGgPGfdfLSdNssWWLZsNsLZsdNdLSZZ
gbGHzzbzHtPfcJhczmMnQBJn
TTGJJPPZJGRzDwtQjTjzDC
VbnrmNVWVWbffbVMsrbrnvFRjzCzQCjvQDDStDFS
MhrRfMmfMmsHgsqPLLGdBqJJGHqd
FMCMbmSQTHdCBmpFHprdHcDNqqfqJdJsDcclDDZlNf
wzwRjwwtRhnzjRBWRnvtnWtnNsfsVDlDlsqVNNNqcqVlDvqf
PtnGWjtwLBwtjCFPFpMpMbSrQm
PWzrtrtzBBfjjWGbfNWvLJLgVSjRLVlSlllLpS
HhZmHGGhGZRpQlpLpL
dTdnHCnhmhcHcntrPPGfzfrcNtPz
PfmWWWPwWdPdWPTVCdpjRnzhjDbrFnGbnQGQrrDR
LSBnZLnJBQDLRGcQGc
NHNqqBqvMMBsJgNvgsstBHNsdwwfTtwdpfTTmVmnWmtmWVlp
zjzwTHCzDzbDzNTDjzDCCHRZmmSGmfgPmZGtHtgLmf
hsqJMcQltLtPhLgL
QWWWcMsWFJssrnsWrdlcPBwNTdzwTvvBvjwpTbBzpT
LRvWZdLzzZWSqdpBzLdzLgRmbHPVHtFHMFFMCtHCfHcbVcqb
sGGjNDnGTnlSSwsrTwcFVMHwCPPPcVfVHwPM
GDQsDlJlQhSDTrpvhhWBLWvdRvWh
sWhhdhdhbHSVBbFLZLnnCmCmtTTCCV
RcQvjNrcrwGNcGNRJJmTpppgCCgppNgTtFmp
GRRRGRGclfjwRsbfHFhWBDhdFs
jfRTfgHqgDZHClcPcrGhnbcqrr
FztdMLGBzpFJpcnzzclblcnbbl
pdNBtdNLdvsNtdLpdGLTZDTgDjmvCZjCRCDDHg
bdrbdZbJtZhrMrWRHHvRHRvHllqZ
GGjCNgDVDFsCCwFNHjlrPrlSRWPcSlvl
CNVDgDwVrQggDDQVsDwNwgTQdJtbfbLhtTdtLmnfbJMntnft
mjznjLchnPPcLLnwCTFFvPgJJWdqJqJJdJJr
bMlQRzbSBbRBMlMfMBBZFrqggvVvfqdDVDVDWWFd
ZSSsRGQtSpBBpZMSbSpZsbtsjhCHTHcLCcjzjCwTTHhmNHtT
ThCHLCfVfDTtDnDppTqclFfSclNrwNPwNfFr
JmsQjJPJMWRRMddZGZWsdsMZrmcqvNSFSwrScrvwSwcccFFw
ZWdJQGGzPJsMRZBGtHLgCHTTVTLBDtgn
JVGJfttHgTLVTsnHgVHfwVBDjQDNQSjQwjbNbQjBbddS
rPvZcZpcvtzcZddmNQjWQSjDpp
rrRZPzRMztFFFqMZFtRVgnsLnVHfVHqJnghHJL
grrZZbJSggQDLgrvSSDBVsGdjHjnGnBGVsLGHj
pCtWtPtffPRcWdBsGsGRBRvhBj
zmvNNclfZJJFZQbN
DDqCgPPDgtDSPPDbgCqcmBMBTQLQZBWwQZbsMWZZMw
RNlNvpvNvndNjMZtBpwMTWLBZt
VlNJvRzdlGFRFGRRRjFVJRRggtPPHgHzgStqCcHHmHqcrc
RfmdFgbtFLHlsjRPsL
LqrhvCTvNNhWBvBTrThrDWZrPjMQPQMcjzsPcQHTlVHQjcMM
BhhrJWJLvCbfJbwgtgJn
FWpRfFRjtjFpVvbTTZFPhJhJLdCLdWBhPmHmCW
McMzNlGrgGGsHcqmdLqbhJmd
lNMwsnMzzsSSGtVVSfvZTtSppb
JrJQDJDVvGwGVwvcGCRRcCBBqsWBRZqWZZ
bNdmhvMpjmHbNbpNvmbBqlRWlCtCqlRZqRtW
HmTjNdmMfTTVvLSzvz
WMQWmfGfQfVnMGWGmGtGWHzZtdLzpZhwrtZcwZzdps
jBgljNPbNjPFRbggNlNBCcHsrLLLHlrLslhlzdhdHppp
BBPBJbFCTGJcVQMGMv
fdmfmmjbPmjlmfhfGglTNLCNvPNSpPvpvSLCPCpS
MtJwMrwrZJVHMgqJHtwVJzVVLCvpNLvDrLvQSQSNcCNpFNLS
wWMVWZzqqMRHztwJZzRqVtjGlBdhbGGbThhTlnTBTWgb
ShhrjPrvhlljnHrggPvvSqRMBZZqBTZmMmTmTMdD
ctLzbcpWCJbNWRQqBBdZFMBdfZdJBm
GQWpzLcVpVNpRggHrhhgvnGPwj
PdzSrmmqSgWWddNQds
TZbwCTLZbHLWptQHhpgNsc
MZjBLjMLDTDqrrGflsjjrf
DBHTnlGGBPjPmwRWhn
hgLgZccSrcMgLMSpCLJjNWmPWjmVWdwJjd
MfQMScQrMSprrTGHBhqTvqlGQT
CDvLRCCzQDWzcGQGvRcpVFVsgTsFrgllrTpF
mjbqtHqHbspspnMv
ZvvqdqqHvLhDhJWzJd
ThHnbRTVbQHSWvBVVBCPBW
FFJgfqfqNwNrvDCBNppP
jzsFfqwqssLzJjffJcssHQHQdnMdhTGHLbddbCnn
gwMHHhbSwnqHrgMqMbnBcldhzBLQBQhBLtLttQ
dCRmpfvpCzcQllflQz
TjPsCJmvZPNPsvZpPTTRCpprjdbrHngqDwqMrDnMbMbHgM
CgNQpgTCgNltHTNQlHpRnRnzBfJnPnmpcpfq
LGrrvGSMGvrsWPBmnJPmPfmrqr
VGsSvdJvbSHVtlttNVHT
LnZDtzpzNpPsCbfBbDCDBC
gSGRSSghqhhSvSRvvhvVqFJdsfBsCHJbVfddCJ
vglRRjQSmnQQCNrL
HwhVddVVwRcGHGjlfS
MbBvDBGvWqpNWvMbzDMNZZlLcjlSclflcjqgfCRg
bvDWDWQbspPPWWQMnGdnFnJtJFGJhhPJ
nDJDdQdPDlDJnnbRQDlTqVfFwfVtjJjjFfqqFqgN
hScrSmSCTZvZCSmZLFwfffqgjfhNGwjhfw
zCzsCCTcMBmSLmsMWHdPWRQPQPddDQ
lzGflPZLSqSlccpqjpdNCwjdsjCnCsJp
VghPQDVMFQNdJjRNBw
tVrhDVmHTlPlGrzL
gfSJJlzvGgRPpggR
VLDDHhHtlZnnZqbGmtqPmmmmWN
VVDBnddDBFFzlscC
cmmzRzcRjFrGncTHqc
ghJfwJJvqhbrdndWgddWBH
fQbSpJwSthbhtvpCwqQbsDPMNLlpRmplzPlRMPzM
bBVQDgBpTzbhpgQVhTmBVBzgrvcnrncsnZrwzHJZfnHcZfrP
tdWlFLMHGFGRGMRLNFHlfwJcrPwcsnfwcvZPfr
RLWGjHLjSjtjmBQVgpQhhg
ttRRJBrCfpprmFqSJVTSwNJNTWlVTn
nLsMghDbQdnhwWNLjcwNSlVH
ZZDgnDQvDdndPCmfrRqzvFqpmp
PPzCrcGGlnhPcsdfNZZdpLLNZsfd
RjjWHjVWDvjWqVMHjHJjVlHdwwJbLfNZdfdgfpppgpfpZw
lBVvqjQqBDBlVmCFGChhnSmTTrmr
BZnGZFvGvBGGrwLBZlzNgmzMhMdfmwgmdmmt
cpDHtVjDWjCtDTCcDNhhzNJszgzMTJhmgg
VWWcRWDpPDPPtHtScqFrLlBFFFSFBqZLSF
qBFcCGFcHHGBldzBLtdzSrdR
fpmfpswfQNQmfPHfPPgJNwRtngTtSTRzdTrLRnSnldLd
fsHNpNPwQZwhVHMFGqvvMcqWFGVF
FwFJlqDDwwgFHQdmFmSQ
pPtzcrLHZrQfdsBsdLdf
bHrrHjbrjbrJvDvbqMVNqJ
WVVpPHPfWnHmpccpnpvQcrgNNMSCTMjMgjjMMN
RsZbhRFTDDJtZFJhTLRRLMrMrCdSNCdSMjrNhjNGSQ
LLqtqqzwqmmflPTq
mmLhdZSdqhqnqMZShLQrMWcrcWQwTgrWVVWc
CCvjjsfJRCCJbDbFsbGJvzgWWGlWrWlwTQrwQGGcHlBg
NRDbRCNsNjQPSSLZNdLn
cmVLcQZPSHBGlSddBf
DFNzDNszlbBlgHNN
tWRzFjsWWtrtlDztzwjDjThLPhRMpppLMhmMhnmncRcn
LFFcgdNLpLQggZQMFMcNJggRHCHsTtRtHTzCTZHRsfSRfs
qnhlhmGrrhhnqdmGhdhWbnSRzSfsBRSTSRtBflRffzfz
PnbmrmGjWMVNvdPFLp
swcWsMMmVwWwFtWlbnnZnFBhbNfrhN
dQLZHjpDQCfBBBBTGTTC
DJvDpDSzSDQZMWsWwPqVtwcS
NVTMjjGGNBqhNttdTTjtcqjCfDlhZhSWCFFJmSmZmWJhmZ
rznsHPnRLzwspZDWfGZJSLZZDC
QzPRRvRQszQsGQcVNqTBBdVj
rHGBglBNLpbqCgFC
PbmbRnmMSbRPDWRnDVSMPMWmvvcvqqppTLZZFpvCpczLcCVv
dsdMSPtMdPnSffQwGGsBBbQw
nqjTlGPGnqWsMPPwGdGjQvQvJCCQBvmvCvQJtmCw
DDhVbDrcVVFZLzHrZBRNCWStmQWztJvtCm
VHDLhFFDpcHZcHGWfsGlspTTMqps
FTPZwBzHHFLTTSwHLJTwVQqnDrzgRRVgQpDVRprn
jJMjsWlvQqVrqgWW
CjNsjjvlmslbcJmmbtCtCThdwhHLhhhLPdBCSPFh
jfgllWfLrfmlTjsCjcjDNNDnNcHJnd
MMBRSRZGppGFpBbbBGvVnFHhcCJqNcNcHCFNgnnn
pMZZgBRVZVGRtRSMbMbvRQmTswWfzLzLzWLrPQmfwLlW
tzpdHLNpfpPnlNFHnpssbgShtqcgTTggrsqg
JZwWGCWMCcbsSHgWjq
QCmDZCJwmvZvCVCVRQGCDMFBNlfHmfLLzPPfdpfBLlPB
PCvRTdPPBVBTGgLGrGqMrMnv
twQwStrsQwstjSHmmpqZpwqNGnGnNnZgLN
mJScfjbttQjQtjcmfbbQJHFTBfdfRhhrPhhTfPVVhPPB
DMPJmLLjhJwNBCNBww
TpccnsZsbTHpsTHVszbpbGHSNwBtWlfrtCtCfrtlBlFZlf
HsHvccvzbqsGzqnnHvLQPghQNNDDvLLjdjLR
zmgVMrrjjMGbbzzdqqrgVbRTHqTTThpNHphNTvvvTNnv
QLSmZmSJTvTnZTvn
SfDtDDmQCFDwWmSrjPPGfjMjjGfMgV
hdNHNHjnGHMTcpWlhBchRBJR
fPztCTPtttLwLzVbwqSVtCBBDpWvlcRRlBpbDBQWcDWJ
ftrCVzfTCFFzTFPrPjNZFHnNsMdZgjHdss
TVcTbdqLqzHHRNHM
PppQTWffPfCPQSsCprzRwRJDzMDzNwRBRPHN
pjCTZjTjmTtsZhGcGdLvdlgv
VJRhVfJRBgbdrrrvJpJJ
cCSSHSHnZPwDFNHCDCQdbQQdvqnMsrpqQnvq
NFFCwSrDzCNrwhtgzhWtBhgzWB
RRBRczzcvmfzVRzVPvPTlCWnnlTGqGMgTTnG
tNLdSdNSMFhsFttddtjlwGqllqQglqTWqwnThT
rLSsLrNdZbbHjLdSFFMjLLtSfVRJzVJJVZcRfvZVRfDpVvRz
DBsdssbdbDfPnnqzzJbqStqzjjJS
RcGMGwwmrJjFFHPG
mCgwMLPgCPmmwWDBDZvWvBCWfZ
cJCGJJMZcMGWMhWCJTfFSfDmmgFmtshggffr
vBVQBDbNstQmFsfm
RVwHNblzwHvNdvBwNjVHGZJZLJTMLMJDZLGRMDGG
LNCssCldDbrnNtVWNQ
mmcpRBMBRBTZzgMMhtFFvrWQrQmWFtvn
MZTgzMZSzTfSMDHwCfPlLLDnwL
HlPcjMSHsMSPbgLhFPFNzP
ZfRhtVdGBNLFzLqf
DRtGGtRGJJTJDZDGdCJrVJmlWvHWcvjMsMWmhQsmCMjW
swpQcsBvvHFpBHHcCHJvJddvbbWPdzhzzqqWdhPnhP
gDDGTgjNWZTMTNjjggRLggldSPqSqGznnhnbdfnbqfhh
WDMDtDNDctVFJstJ
rFDbGjrGbpBBbrCbrwpvvZQZZhgTLVVVVLgThCTggg
NlfHpttqzltMzRSMSdWRNSfSTTmqgcLgQVcQTcmgQgmZVPVZ
HWSWpMHNpNWlpNMsMzWGGwwBvvwBnwBvsnnvnB
mZVVHmmRZlvdjvNpHh
DFBnFDtnFbBMrQbBMvFLvgtjjNpcLpJdNzJJdhWNpJNWcN
QTsbrQggBsvsgVTwRVGZCfGZfR
RGNGlGTWJnJlMcRMGqvSmnDtvDDvtLSLvr
HfsFhPPdVshfbggDVmzcvSwvStVzDq
BPPfCgCFfcBbPbHbBHZPFsbBpMGlClRNJRlQTjQWjWpTTlGT
HQNqQbbRQHbZPZQPqbZTvWFWmCjvFRvRTSrRrr
lBpBpzLLdBwsLwLLWNggzCFTCmFgWmrF
VwsswGVBfJfccLBcsJGNdpJHZZqnhtqqnhPHDZHVtPQMZn
LMHnHnPMnFdJFNFJjZvrJF
wlTlslptlwtzcvTqvTsVSWWrbJfmJZNZJjcNWfNJmf
qDlqVthTztSSpSlqtpTTzLvRRnnCvRCPLBQGDBdDGD
HlmlJgRBBpJLpPBHnlLJsrgJDMttvSdddcMSStWjjWtcSzjs
qfTbNPTVGhGFCVGTwZfNZNNVWvjSczcjStMMcdSczzczvbcW
GZVqffQTwNQTmPRlggHLprHQ
BjsWschcTjjWclQTSnZFrjtFtbzZfqntzF
qggNGMHgvHMRZMtznbrftMCn
qvHdqpwgJTsVccwscT
FJwNPHJmPHTJHglTFwgmwqtShBqDmDBzzBzWhCDWqQ
fpsjNsMVLVjDCCSzBtjztt
sLrdfbsMcbMRZZZbbsfrsrNgGNglRwllRnJnwFvnFHnG
lWWVTJlJCTTzDdWzqdtFFt
PvPvrhbjhgSjvJQSnQRbjZDZFFHMtGGqFtRMGZFtGH
rhPrSgfvJPfmwsTpLcsV

View File

@ -1 +0,0 @@
rhPrSgfvJPfmwsTpLcsV

View File

@ -1,6 +0,0 @@
vJrwpWtwJgWrhcsFMMfFFhFp
jqHRNqRjqzjGDLGLrsFMfFZSrLrFZsSL
PmmdzqPrVvPwwTWBwg
wMqvLMZHhHMvwLHjbvcjnnSBnvTQFn
ttgJtRGJQctTZtZT
CrZsJsPPZsGzwwsLwLmpwMDw

View File

@ -4,7 +4,7 @@ use std::path::Path;
use std::collections::HashMap;
fn main() {
let file_path = String::from("/home/wafoo/advent_of_code_2022/aoc_03b/input");
let file_path = String::from("/home/wafoo/advent_of_code_2022/aoc_03a/input");
let mut result = 0;
let mut i = 0;
let mut hashmap = HashMap::new();

12
aoc_04a/.gitignore vendored Normal file
View File

@ -0,0 +1,12 @@
# ---> Rust
# Generated by Cargo
# will have compiled files and executables
/target/
# Remove Cargo.lock from gitignore if creating an executable, leave it for libraries
# More information here https://doc.rust-lang.org/cargo/guide/cargo-toml-vs-cargo-lock.html
Cargo.lock
# These are backup files generated by rustfmt
**/*.rs.bk

8
aoc_04a/Cargo.toml Normal file
View File

@ -0,0 +1,8 @@
[package]
name = "aoc_04a"
version = "0.1.0"
edition = "2021"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]

1000
aoc_04a/input Normal file

File diff suppressed because it is too large Load Diff

6
aoc_04a/input2 Normal file
View File

@ -0,0 +1,6 @@
2-4,6-8
2-3,4-5
5-7,7-9
2-8,3-7
6-6,4-6
2-6,4-8

37
aoc_04a/src/main.rs Normal file
View File

@ -0,0 +1,37 @@
use std::fs::File;
use std::io::{self, BufRead};
use std::path::Path;
fn main() {
let file_path = String::from("/home/wafoo/advent_of_code_2022/aoc_04a/input");
let mut result = 0;
println!("In file {}", file_path);
if let Ok(lines) = read_lines(file_path) {
// Consumes the iterator, returns an (Optional) String
for line in lines {
if let Ok(ip) = line {
let split = ip.split(",");
let mut vec = Vec::<u32>::new();
for s in split {
let split = s.split("-");
for s in split {
vec.push(s.parse().unwrap());
}
}
if (vec[0] >= vec[2] && vec[1] <= vec[3]) || (vec[2] >= vec[0] && vec[3] <= vec[1]) {
result += 1;
}
}
}
}
println!("{}", result);
}
fn read_lines<P>(filename: P) -> io::Result<io::Lines<io::BufReader<File>>>
where P: AsRef<Path>, {
let file = File::open(filename)?;
Ok(io::BufReader::new(file).lines())
}

12
aoc_04b/.gitignore vendored Normal file
View File

@ -0,0 +1,12 @@
# ---> Rust
# Generated by Cargo
# will have compiled files and executables
/target/
# Remove Cargo.lock from gitignore if creating an executable, leave it for libraries
# More information here https://doc.rust-lang.org/cargo/guide/cargo-toml-vs-cargo-lock.html
Cargo.lock
# These are backup files generated by rustfmt
**/*.rs.bk

8
aoc_04b/Cargo.toml Normal file
View File

@ -0,0 +1,8 @@
[package]
name = "aoc_04b"
version = "0.1.0"
edition = "2021"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]

37
aoc_04b/src/main.rs Normal file
View File

@ -0,0 +1,37 @@
use std::fs::File;
use std::io::{self, BufRead};
use std::path::Path;
fn main() {
let file_path = String::from("/home/wafoo/advent_of_code_2022/aoc_04a/input");
let mut result = 0;
println!("In file {}", file_path);
if let Ok(lines) = read_lines(file_path) {
// Consumes the iterator, returns an (Optional) String
for line in lines {
if let Ok(ip) = line {
let split = ip.split(",");
let mut vec = Vec::<u32>::new();
for s in split {
let split = s.split("-");
for s in split {
vec.push(s.parse().unwrap());
}
}
if !(vec[1] < vec[2] || vec[0] > vec[3]) {
result += 1;
}
}
}
}
println!("{}", result);
}
fn read_lines<P>(filename: P) -> io::Result<io::Lines<io::BufReader<File>>>
where P: AsRef<Path>, {
let file = File::open(filename)?;
Ok(io::BufReader::new(file).lines())
}