Compare commits
10 Commits
Author | SHA1 | Date | |
---|---|---|---|
5d93c04f2b | |||
c3bb61daad | |||
9a68765006 | |||
e56b0cdc9a | |||
fb41918b20 | |||
7d0be1fec7 | |||
2cf4f06dd0 | |||
588b673b3f | |||
e563815306 | |||
022b27d847 |
@ -134,24 +134,6 @@
|
|||||||
<ClCompile Include="src\days\day05.cpp" />
|
<ClCompile Include="src\days\day05.cpp" />
|
||||||
<ClCompile Include="src\days\day06.cpp" />
|
<ClCompile Include="src\days\day06.cpp" />
|
||||||
<ClCompile Include="src\days\day07.cpp" />
|
<ClCompile Include="src\days\day07.cpp" />
|
||||||
<ClCompile Include="src\days\day08.cpp" />
|
|
||||||
<ClCompile Include="src\days\day09.cpp" />
|
|
||||||
<ClCompile Include="src\days\day10.cpp" />
|
|
||||||
<ClCompile Include="src\days\day11.cpp" />
|
|
||||||
<ClCompile Include="src\days\day12.cpp" />
|
|
||||||
<ClCompile Include="src\days\day13.cpp" />
|
|
||||||
<ClCompile Include="src\days\day14.cpp" />
|
|
||||||
<ClCompile Include="src\days\day15.cpp" />
|
|
||||||
<ClCompile Include="src\days\day16.cpp" />
|
|
||||||
<ClCompile Include="src\days\day17.cpp" />
|
|
||||||
<ClCompile Include="src\days\day18.cpp" />
|
|
||||||
<ClCompile Include="src\days\day19.cpp" />
|
|
||||||
<ClCompile Include="src\days\day20.cpp" />
|
|
||||||
<ClCompile Include="src\days\day21.cpp" />
|
|
||||||
<ClCompile Include="src\days\day22.cpp" />
|
|
||||||
<ClCompile Include="src\days\day23.cpp" />
|
|
||||||
<ClCompile Include="src\days\day24.cpp" />
|
|
||||||
<ClCompile Include="src\days\day25.cpp" />
|
|
||||||
<ClCompile Include="src\main.cpp" />
|
<ClCompile Include="src\main.cpp" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
@ -33,64 +33,10 @@
|
|||||||
<ClCompile Include="src\days\day05.cpp">
|
<ClCompile Include="src\days\day05.cpp">
|
||||||
<Filter>Source Files</Filter>
|
<Filter>Source Files</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="src\days\day07.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="src\days\day06.cpp">
|
<ClCompile Include="src\days\day06.cpp">
|
||||||
<Filter>Source Files</Filter>
|
<Filter>Source Files</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<ClCompile Include="src\days\day08.cpp">
|
<ClCompile Include="src\days\day07.cpp">
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="src\days\day09.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="src\days\day10.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="src\days\day11.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="src\days\day12.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="src\days\day13.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="src\days\day14.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="src\days\day16.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="src\days\day15.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="src\days\day17.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="src\days\day18.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="src\days\day19.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="src\days\day20.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="src\days\day21.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="src\days\day22.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="src\days\day23.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="src\days\day24.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="src\days\day25.cpp">
|
|
||||||
<Filter>Source Files</Filter>
|
<Filter>Source Files</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
@ -5,3 +5,10 @@ This repository is for my attempt of [Advent of Code 2022](https://adventofcode.
|
|||||||
This year I will be attempting it in C++, hopefully I can do better than last year.
|
This year I will be attempting it in C++, hopefully I can do better than last year.
|
||||||
|
|
||||||
Got to Challenge 18 in [2021](https://git.luke-else.co.uk/luke-else/AdventOfCode2021) and started to struggle. Managed to a couple of part 1s afterwards but ended up calling it at day 21.
|
Got to Challenge 18 in [2021](https://git.luke-else.co.uk/luke-else/AdventOfCode2021) and started to struggle. Managed to a couple of part 1s afterwards but ended up calling it at day 21.
|
||||||
|
|
||||||
|
|
||||||
|
> ### 12/12/22
|
||||||
|
>
|
||||||
|
> Over the past week, I have been incredibly busy with work and studying for Uni exams and so I haven't really had the time to
|
||||||
|
> complete the challenges. I would still like to complete the challenges, however, will probably have to do it amongst studies
|
||||||
|
> and so won't be able to do them as they come out.
|
2500
input/day02
2500
input/day02
File diff suppressed because it is too large
Load Diff
300
input/day03
300
input/day03
@ -0,0 +1,300 @@
|
|||||||
|
GbccTtTSGGbgrcWBGGrdgTnVQnCmNpCJlNnNPVfClcnN
|
||||||
|
vMzvZhzhwDLVmQnClwwNQp
|
||||||
|
FRsZFzjQFsqRzRRjDZbdtTgdHBBWGrdBdHHs
|
||||||
|
HCLTmbCLgzNBNPSSlT
|
||||||
|
JJGMWRJMrrdwWWGjGWMLRGLjBzNQsBzPPfflzDPBsBffDrQz
|
||||||
|
pwJdLMjdMddWjLtwZWMMwGtHhnvnCnhvqVFFZnvbgbqVCZ
|
||||||
|
tvMCDCSVVvDDBQFRbqWMMsWgFWgc
|
||||||
|
BLLPTpBmfLPrHLLfLsbhRqbzRRcRHgqssR
|
||||||
|
dfdNLmPTdNZmZdZPfpmTJLPPSvQjtSGVwQSDJSjSwDQBVCGw
|
||||||
|
wZWTWNFqzwZbWNpSgGMVMtTHsgGs
|
||||||
|
nlnPnPvLQjzdtsjBHBMMGSHg
|
||||||
|
LdnrrLnhRdLLmLDRPvmdQnJDJWNqcCqZJZqfFqfcfzcq
|
||||||
|
vPTbfWggzvGVqjsVqV
|
||||||
|
dDcJHZcZHmMFQQMshsjcRqVChjNtqh
|
||||||
|
dDHJDmFnrJmQFnBdMdQHJdZZlWTTPPjTLWbTzLWlTTfwjzBT
|
||||||
|
VfmDHDfZzfLcZLLLHBFQtRJTcdjgdTgFjjtR
|
||||||
|
WRPhMlGSshPRGgvFMtddTjjCQt
|
||||||
|
SPhWPsbNWShsWllswGpzLmzfZwmZfqLVRrDBZB
|
||||||
|
MtZgRgJJbbGjgDDgbjRjRbGcNdWwncBFdLBBMhFBQwnWnw
|
||||||
|
vlpsNVsCzzfHpvTpzlSSSvppcQdfnwnWhndWndwfQLhnhcFQ
|
||||||
|
pCsCCTHVvSzvPvHvzpPVTVHHRJJDgJZjJjqNmjZmDtJRZPNR
|
||||||
|
GTGTbhhPjJJjBhhZsGzmfHSNsmHHgSdL
|
||||||
|
FcFpMDFDRFfsRHSjmLjR
|
||||||
|
CpFjqcCjwjnpwhTPTWBQZZTb
|
||||||
|
zdzzwDlnTDQQQQnqQqqsFqnrSBSprbpjNJJBJPPdpJfbZb
|
||||||
|
hgMcRVGMtHgRcNSPrpfgfjJpBp
|
||||||
|
CLRHVHhtvtvGPWFFDqPDLnqP
|
||||||
|
jssjjjHCSGCMNJTWWCJT
|
||||||
|
DvcvBtVrrDSNWcMfLRfM
|
||||||
|
ppDZSpBhBvBmvDHnFsHHPnGPGbQp
|
||||||
|
VVVLsLWnjVVBGgScjtBjjLLgmJdPmJmfmhmGmmmNmJGhPNJP
|
||||||
|
QbqlZqQTZvMHmshvFhPfffFp
|
||||||
|
CsTRrQrwbCbrZqQTQlRjtDBSBtwBjgVWLBtgBt
|
||||||
|
FLsSFRTPscHZmGRGGc
|
||||||
|
npNNptgttCNpgLbnQMgnQnMNqVhGqZrmrmmqrmcrqmCVZwqH
|
||||||
|
WMWbtpjLgnLNvSfPPzjvjPdv
|
||||||
|
FcFFhZlhlMrHlSFSrHZMJZSVmmLmVLLCsBtLBCzCBVDRcV
|
||||||
|
PMGPbndvGfGstLzDCmLB
|
||||||
|
NwjPqdvPpvgddqgwHrZhJlTlThpWJMZp
|
||||||
|
SdjStScTWTwwvwwfjRhQPQQQDlLBGpLrPrLrLc
|
||||||
|
gCqJbNsVsNMgzMJnnqzNlCLGGlZZPrLLlLLtpPDl
|
||||||
|
JsFJFMmbJqqnJbhSHdjWwjtmHWvS
|
||||||
|
zBFDGGbNzDWRbDccsWslHlWWsJcS
|
||||||
|
zMVqTwzPfVfVMwmlcZTZZlSmTlmc
|
||||||
|
MrMvMCnrMVMCPrPnDFFGgQdFgRdzznbd
|
||||||
|
rJtJnrnSShJgcCsjjNNMSSDzRmzm
|
||||||
|
HWDWPBPDBfFVBffqplvlmNlQllvzQNQqlN
|
||||||
|
FVGHHFVbwBpBPwFFGfBpHVDgrcJCbZcLdCgtcCcJLJrd
|
||||||
|
MGHGGFFqbFTGmFwLmQsQflFN
|
||||||
|
WcvBdpjhdZdNwdZwLZ
|
||||||
|
vWtgVcpvjthtNcjntDhhpSJMSqHzqTzqCVHTSqHPGT
|
||||||
|
cVHZfjfZMcrSDQMJRCBCQw
|
||||||
|
PtGddtslsWQDBdwCDDdw
|
||||||
|
WsvTFnshPTGhGhhlPNGTCnsjgFVfmgfHZfVHgcHZVVFmFV
|
||||||
|
JFFqfJBgrHBffVHlsBFqfWNgjTtztNnttWWvWNwzwt
|
||||||
|
hGZbcBcZZSQmZLQRTbvNttTzjtTvbpzv
|
||||||
|
cmmhRchPZhZSSmdmGPDDdJdBVMffHlqlslfF
|
||||||
|
qWwTNwNHMHNNMRqMdRMQQMHLmmvzrTmrzPvzJvZvZlvzjZ
|
||||||
|
FphBpnBhVBSFvLljzZPpmrPL
|
||||||
|
nGsBbssbcbdlwggdNl
|
||||||
|
RLSRTLSFFFLPSWpzzTJdzsQpbd
|
||||||
|
DvqqcwVMDDcfrrnwDcwnvCdpQQphJhJjhdhpzsJhMQ
|
||||||
|
fGcvDZffcGGZDHGrGrtJRPlPmJSlPLRgNBHg
|
||||||
|
QlFFmGQFDQrrWlRlWGrnQVCLNvvPwLCwBvCcCcJCLCCm
|
||||||
|
tHtfsjSMCNPwzvCf
|
||||||
|
MjqStqMHsMSgjShjTttgphsTlrbDWGDrGlRTlNDbQrQRWRbD
|
||||||
|
QbChcCJCbHQCjbGCjQfsdsrtTqrfTLrcFftd
|
||||||
|
DwRzVzzZnzZRwvgRhRWtqsLLWtRdqLLdqd
|
||||||
|
NMwMzBVVPPSGQhBl
|
||||||
|
ttTPHWdrJjCdjnFMtLLtLNvQltLh
|
||||||
|
pSDBwZRBBsgfDGGsGpBVMFPQQlFMFQQFQfNvLNfF
|
||||||
|
PsppZzBVzwgDwBwwgpSSBssWjqrdCnjjHdmCTHznWCJJWn
|
||||||
|
WcdHdPcdZrLPDPBQDg
|
||||||
|
pMjMMqfmJlqNflMlFNRfLBwnLzTTTDJJwDTTGTLJ
|
||||||
|
hlhbqpbNNbVVdbZtSB
|
||||||
|
RDBWGRDnzBWBJDNBttSLlclldtQQcTTLFF
|
||||||
|
rTPVjZZsCZrVhdFMcgLgwFSgQh
|
||||||
|
PsjHVffbsTCHrCvTPfDJGJHNzzNJWnnnmzDB
|
||||||
|
LQdFgTLdQjVsQFTRBjMZrmBjWGMGSW
|
||||||
|
flvJJlJpbNnppCpMGGfBBZSZRfFmGr
|
||||||
|
NNbNDNlbDpHlbDDplvzvnCbzqsQPFQsTTccsqdQqLgdHLwQw
|
||||||
|
DnGDNDTFdFwDzCZZRmhThCRRRv
|
||||||
|
SgrPLrrLsBPbHBCmtVZVCdCcctHH
|
||||||
|
rSbgBrsqgsPppMBqfpPsLpPGlNGGDwNFNJWDldlllDwJMG
|
||||||
|
PWbvNWvpvJPnWDGqDjDczj
|
||||||
|
QwfFFVVQSMlDlQfFZhsHrBrhHHTcjnczqjzqrG
|
||||||
|
mwMSgfmDmSSFgfFNbmLpbRbJbvbRpC
|
||||||
|
lsggLLLDGldGTGBBhNTCwRwVnJnNCCnbRV
|
||||||
|
QQpWrpHtrHrpNRRJNtfbJCVR
|
||||||
|
PvQQFPzccvBglclNscls
|
||||||
|
NsszMMNGWLcWBhMF
|
||||||
|
gTtwvbqfnDTdpvqDftpnnntDZvLFQFBLmRWFRhJZJhLLBRQB
|
||||||
|
DwrpDbngprPWGllSNrSS
|
||||||
|
nCqdLPZPMMZLNvtGhRmGhGPmtW
|
||||||
|
TSrVZVSZVwFTgSVtrtchvWRRrtWtcr
|
||||||
|
gjbjBjgTjfgfVfHHppBLMnqLMDnqClsZJLLD
|
||||||
|
hrqShCPCpHHBVBGWQFVQGFGnzQDf
|
||||||
|
tgvZsbwsbcMbRsgccjDGFvGFfWJLLzFFQJ
|
||||||
|
TTZmMcgmbmWZMctbbtsHrrqqSHHrCrPBBSCPrT
|
||||||
|
HHHNZLGLpBpRSvWlGlqhPghqDGnnFr
|
||||||
|
QCNCMTJdjMjdjsQTbdQmmCQDngFqnggPFcPcnPFcDqcbDn
|
||||||
|
MNJfzNsfJdJjdzwMNjjTJttSHVStRtZVwHvWRWtZHt
|
||||||
|
DSbvDdDbbwHgCSgZPwpbPgmTTJhsTTChqTJssQssFmJJ
|
||||||
|
zzjMNNGMMRcNNhvnvFqmtJJv
|
||||||
|
WWffvlVrcGzGlcjLvfrVRLHgHgpDPSbPpwwHbWbBbPPH
|
||||||
|
FCCjjFlFtCjzlpTHtJsQTTcpTT
|
||||||
|
DWLhWSgDWWdSWLwmmpHHQTHcBTBvvwHvHl
|
||||||
|
mgGRhrLLgWqnjrfCNlzP
|
||||||
|
cLsslBlsqNNTHlTVNbLZZLRCQbZZdQdpbP
|
||||||
|
JGfJhhwfwBBSJPRdZddpZRQbfR
|
||||||
|
hWmWGgDhJrFhBcWsssWHvHll
|
||||||
|
lmmvlJFtMHFtQzVSRbPGzLJRgG
|
||||||
|
BcTcrNBrrwwqDBqNqwcrhLpLPVzRhPRPPPgSGVPLbS
|
||||||
|
TrDqcnsTcsmnvHtdGtMW
|
||||||
|
CcnDQpSDcnFcPBrmbPQGBsGB
|
||||||
|
gCtCfRZTBWbjPRbr
|
||||||
|
qgvHqgJhMfZTtvHgfTghJgMJDpdppFSLLCcSDvLLcdDwvLcw
|
||||||
|
ffFgGRMWSTGcnDgllDDpDp
|
||||||
|
dvSdHBrVSLNVLjdlsllcsDqpsZ
|
||||||
|
SHHHNrLJLvtNQJVvmMfGRGGRCJWJRwzWMh
|
||||||
|
JNpNDfDBDHVzwHHzpzBWVBPsvsFNCbmbqsFFNsjCmvsmNC
|
||||||
|
rnnrtLhnrrQZMvtFbWmqtllcFb
|
||||||
|
GQRdGQLLhMSQhZLZdgdwwHzPDzSVWzVDwJDVpz
|
||||||
|
LdcGjgdcrMDSFGVfnnGG
|
||||||
|
HNsCCQFCPvFFBJnnSBJVfDVJwf
|
||||||
|
HHFRqHPpNppmQPcpLjzrdgtbgztT
|
||||||
|
GlZZbclGZsDvlGhsShRnCnMQtjtQjnCQsQRM
|
||||||
|
PggFVcdFNFNNVVFLPdPdrwpWBMMnqMpnttJMnjMnQqtqQtqq
|
||||||
|
FdgcdcLwfTmSGTmhlbzG
|
||||||
|
RGvhGrLhhRhlpChZrGSprBdPPHJJSBgSSHqBWBBffH
|
||||||
|
mQmjmwtTMTVLzHnTPWffPHHJBf
|
||||||
|
jMmmwMcVcFLFrlRshZbCrF
|
||||||
|
SnNgNgBlNZSZdZtMrlnSnnQtjpwFwpvFJwFqpwSbqjjqGRpv
|
||||||
|
CLCcWHLhLTzsDPcCWMLGpFJbGFwsbvGwJwjpRv
|
||||||
|
zMCTPhmHWzfhQQmndNllNrQg
|
||||||
|
dbdBdZrQsrdrGslrrSpLvwHmlTmmwScTHv
|
||||||
|
FgnJqLDLWqNnNpppmpCSSmCJTw
|
||||||
|
NNhhnRNfzMhgnMDFfGdGLbBVVdQRtPVZGt
|
||||||
|
BBQJNTTzTcfRhtjhffqDDWCC
|
||||||
|
vZnsLsVLSvPwPFFnwPlSPgZWqGjChgWCCWWCMCgGMh
|
||||||
|
srLLnLmlPwrrPwmwwvlRqzQRJBmppQTTQpTdBN
|
||||||
|
PLDpZGpWbNGWLDfQmsQDwwsmhm
|
||||||
|
vTzMMbgCfgHQsmQt
|
||||||
|
VMlRznlzVnTcFzbMcrpJcNrJdjdpZrLdcZ
|
||||||
|
SftvFcDSvDHsFtctMSvbdjbpqpRRpRTJrMdrrb
|
||||||
|
QzQZWZnQgQZwBBwsJdqPjdjrnTpJjs
|
||||||
|
NGmwmgszhZwwGGgZGmggWLVSVHlNVVtDcDltFVVVlVHt
|
||||||
|
WCfFBfBHHjHHjgHBjJFVcVRwQMbVrRhrJbRRJM
|
||||||
|
sZMsDqzZPRrRrVswdc
|
||||||
|
vvTzDzpDTvpDvZPvSnNZZlSHMCHjjFtWmlttlCjmCF
|
||||||
|
hJZwhrvhBJRrPQPwRRZLllgLqfcqpTggpcTWMTff
|
||||||
|
HHDzMztbVgTzNpgf
|
||||||
|
nGbmtjDMFjDjCHbbbHHHdBQQPBrZvJQRwvwRPZQJGs
|
||||||
|
NNSrMSHRqWpWNNrNMvLffTBBDmsvcmcJLM
|
||||||
|
lwPPhcddcGPlBDTDlmDvJJsv
|
||||||
|
bZhzCdPGGFzVVPwVwbNtcqHrpnpZptSZqRrt
|
||||||
|
GvvSWhmhWBNcBDNc
|
||||||
|
FzlRRTljjRTjRRmZfbflRTlFFrrMrcBcDVqBVsNDDJsMFr
|
||||||
|
bttRfzfRHzjlmlnCbTtzbRShgwHGGvppLdpvwLLGLLhd
|
||||||
|
MHGMWdBFFNsFFHpWSFddMmqVmVBggmlVfbVffjgZml
|
||||||
|
hcJsTTscvsLDzDJmqVgfqbqnbmfJbJ
|
||||||
|
PvRTzsPwLcwCprSdwdNW
|
||||||
|
qfJnJdLpJzrcqCrCzcGfpRSSVBPRSjSSllTNRBdTRS
|
||||||
|
DbsbtggsbbsghhgvnWWSlVjPSjmmPBtjPNlTmS
|
||||||
|
vHHHHDHvZHQvWbWsZDgWhDwWzpfGfzfcpFJzczwFJrfffnGC
|
||||||
|
sQvsRQsFZvfpGhjhQqjpZvjGJHgngPBNHnCBJBCmSBmBNG
|
||||||
|
HTHwbtdTDDnCTPTT
|
||||||
|
zwMlVdzbzLzMWvQZRQZfZZlHsR
|
||||||
|
QhzWwRBPHgFrWWrH
|
||||||
|
SDgJCCDCsVpMMqTtFpfpqG
|
||||||
|
gJNCCddSZNSlljQzPPNBzR
|
||||||
|
dLzVVjfLGCCdRPrdmBtwWttr
|
||||||
|
NnbNsbTHJnbHbSHlNQsNtwrJRwBMMBhrPJWZRRtM
|
||||||
|
QSslpFvpSSsQPFCDqqgzcjCj
|
||||||
|
fcpGshsfNcNZsmRjNqCtnFgbCgHrrggmrn
|
||||||
|
QvzBlBBQBdJTBzBwVVMgbrwwLFtLtgLFHCHrbF
|
||||||
|
dlQQMBSSTPZfPcfssZNC
|
||||||
|
gNGVMzVpVVTdPDWdRdNT
|
||||||
|
BfjbnCBjBzffHrbrzBDddQWTZZQTTJTQTHHS
|
||||||
|
zrFncfBjcjnrrlCLwFgpmvFmwGmVLh
|
||||||
|
MbngccTfWgbWcTTzZghmLshhLRttpthRDLtf
|
||||||
|
CdFdJHCJjBvBSCNCNJBjjdjpsPDwDtwvptRPmLmzRwhhLR
|
||||||
|
qJSCCBFHQBFFldrVZZbggnGTzcZQ
|
||||||
|
lPrpppllcwwpHprppNdfLbQJnWdLJnncdN
|
||||||
|
tSjjjSSDGgghRbbSTfTbTFTLQn
|
||||||
|
jCBgDMbBMGghZzCZmmlrrpwp
|
||||||
|
FhCDFvvPwCjcLhDjhnvjnsdfZTlflQlflLsppdQfld
|
||||||
|
zPNSmmHrSSHWBNSMMVGzfGfZTZQZzdpdRGZR
|
||||||
|
WSNVVMMVtHSVbMNWBHqmwcvhcgwgvwtPvgtPDjtw
|
||||||
|
jSSSjzZMmgSzzwmZBtHcHmtNdncHtnpNcn
|
||||||
|
VsLsRsJJsTfRVfLRLJlfLlWqNbDcddncvpvbdvcnpqdpdtHq
|
||||||
|
GQQTsJGGJLlRGJFWffWLhgZwrZBZFZrhtBjrjjZw
|
||||||
|
ZfzJPvPnLvRJRfZLDfjfrBcqrgsgDBrcrGgslsms
|
||||||
|
SNhpqSNhpVTNQSMNgWmrlccVGBBmwrBw
|
||||||
|
QHHFhhNdTNHHfZPFqtqPRtjq
|
||||||
|
PMZSPSZZGMspsLhLRqRVzfGjvF
|
||||||
|
tcwwgcgbcbCrtbbtmQQcCqRffFLhRgqjFjRfhFqhqz
|
||||||
|
CLQtcbcmwmbdrbBrlrCwQTsTPsPsZNBPNWJpZWpTss
|
||||||
|
lMTrcHrhChWnRzJrznnr
|
||||||
|
DDJbPwjLJpfBQjPVBpbsGVGVWnZnsqnZsnzsqZ
|
||||||
|
wJQLbpPJDLfgPbDNCHNlghNCMhcNcl
|
||||||
|
tlVZhlVWtnBltVtssZBBbPbcpdPwbPWfvcbLvbbb
|
||||||
|
NwCTFNFDNdSNPpLpfN
|
||||||
|
CGwRjwDjzFFGRGjjFRjlBtZqMzVVtVqhMZMBZn
|
||||||
|
HhFdMFHhgrdjcZtZjr
|
||||||
|
zvvQQvzwzDMjZTjtcrTDtt
|
||||||
|
BwMwSvQSVlzQlMQzwzNgGHPGGHFCCCgGhsHLCS
|
||||||
|
zMVtBhhVhhDhtzBtMTTfDrPbmRRmPbQmrQbNQGRQtR
|
||||||
|
vLlJHgnLpDvHHvHvmPbSQbQRGmJmPRrb
|
||||||
|
pspwHClCwqplsHqDsMMTFWsWfjzszf
|
||||||
|
CmmjLwWSWGCHCjwSmStJBgQcccBhwgQtgthQ
|
||||||
|
WZVFTpqWsMsZpFddzszbVzJQBnRtrQthchdBgtgRtdrc
|
||||||
|
bbsMTWsMVsZqNZMpqWDqbMsCjvlCfjGCPlLLPLCmSCfCLN
|
||||||
|
VzsjjVGhpjJrJHCppprt
|
||||||
|
WtMnqtWdSQDtMRSnLNHHwHwQvrJrJCPN
|
||||||
|
tTtWSScTddBqdRMmlsbFBfhVBhfjjF
|
||||||
|
gLMWzdTgLFQHdlMgMRwcwhqqvPcPhVFRDF
|
||||||
|
tBnGrSCZNZCrtGBsSNGtBPhcgfchqqDPwVPRvNRqwN
|
||||||
|
CmrgstjZngtBzbjJlQWWHjjM
|
||||||
|
qttwGWHtVPzJJPqbmb
|
||||||
|
NrRvfTTghNrpLrrpLTrNrRrhvJmzmzlbbVVbdbdZlDdvzMPb
|
||||||
|
rfcprNcfgpLrVNnnCcnnscstFGCF
|
||||||
|
ZZhTfggZsbshGrfshMrNMCSRMMWqCqMNRq
|
||||||
|
TVTJPDTFccqMCcJw
|
||||||
|
BBLBmLTLDHFvsQpfgnZhbQvG
|
||||||
|
ffSrFvVVmVCQSfVDFzDvDDmmnGWCRqGRWNNqlttnRsNtGnWW
|
||||||
|
PgZQgPJJpTpTHRGtNRGWqZMWWR
|
||||||
|
wdTdwgbPJTJgTgLSFBbrQvSrFrVS
|
||||||
|
ppssshsscCVCHhVWVpznnQRBnZnBbzczFPRS
|
||||||
|
dqqfJGWttfWGlwwPSbFbZnRFPFtFZS
|
||||||
|
wGwdGdddLfGgMTJfwLMlJMpTCChjHhjTHpjjhmsDHmHW
|
||||||
|
PZQBhRPQBQrWHFHqHFHCqh
|
||||||
|
STQSvvvppzSVHJJFWjHC
|
||||||
|
TTgTvbsbszcNnnvbncvRGPBRtRgQrDPLfftPPR
|
||||||
|
dMltttpQhmQVZdmhsdrvNCHvlWbHWvHCWrlr
|
||||||
|
PzzLTGpGPDzFBzqFGFqFvHWHvRJbbrbWvCvjJCLv
|
||||||
|
BpqTBzpzfGGTTPZtSddtQmVffSst
|
||||||
|
bwHbRZldhQQfDWWGDjBf
|
||||||
|
CzvgpsNMsvCvFvpszpnMsFgBTDBDWPnPVJJZZDJnfjDTff
|
||||||
|
CpcLsFrMZbhRcdmt
|
||||||
|
HgjpWlhzpWjhWTQPFdPBRQzTMQ
|
||||||
|
JsfwrqLttwJVLGhRQGGPBd
|
||||||
|
CttfrqDmDDtCsbZCHjhZHSHNlgcW
|
||||||
|
QSdCWlCRhWRdlrlZrDssZsGDbv
|
||||||
|
pjPrpjqFNrZNGnBbsNDG
|
||||||
|
wjjVHjfLQRCgdLrC
|
||||||
|
PjMpRdBdjMSGsjpdprqtwCrNGrrNlthhrG
|
||||||
|
WQzDzLZDgzZcqlqqrtJclJnh
|
||||||
|
zbWHQHDfDWZHfLZHfffWVZpRSPpdVvBSPMqVMPjdvspS
|
||||||
|
TMBJLTJlFHBjFFtMGngpvvpgvQmtNSNngv
|
||||||
|
bVhsZswRCbbVZWVfVZwVSpmSQPPvNHwPHmgmSSNN
|
||||||
|
dCCVZZcbWVVcCbbfsLrdjFMJdDDHBTMrjr
|
||||||
|
vNWcTWnCqNCPPjhhHsQrfgszrTJRQsfRQD
|
||||||
|
wLdwMBLFBBQJpszJBqzB
|
||||||
|
lLwVmMSmttVMlSNqcbcbSbNcvHbh
|
||||||
|
PVfJfDWrPVPPLcPPFWcjPrqlqqQsljRpplqBQpRvSQvs
|
||||||
|
NdggMTCChMgdChNmdtTbtmsQSRhQslhlpFRpFwllwQvw
|
||||||
|
CdnGzbGbgMGMdTCZZDDJcZFDDnWrPH
|
||||||
|
fsshhnfLZSvcVbdcZVJj
|
||||||
|
RCCSmDFFpRqHQDgWvbGjgjDdbG
|
||||||
|
pFmFtCSBCSMBBLwrPsBPNlNB
|
||||||
|
fWWcwbbwbWfGCPgPfvbwgvgcQQqQLsGLJQTZHHrZRsrLqlJs
|
||||||
|
VnszmsDBpMFpzNFlrlRLRRHZqRHr
|
||||||
|
VpdzDMNzNDjpsdzdnzDcPCwtWCjhbthvfgtgwP
|
||||||
|
SPQtSWDLLltQQctHLSBSWHlWgFwhMRsgwggrFJPgdgwwGJhJ
|
||||||
|
nCqmfVqfVjTznCMhsGRRRgGFMffw
|
||||||
|
mCnNTVzVvjmqNtlDtbttDlBM
|
||||||
|
LjctjtppFWmgthgs
|
||||||
|
nBrNvzTqlDJlbbZgvmhMZVZb
|
||||||
|
JJrnTrrgGDqDPwwSPHPpfjRdPc
|
||||||
|
sTQmCmmVqmJHSTjGdMMfMNNvNHvc
|
||||||
|
rFbzlLLWWPzwlWrlbwzrWbRvdfFjdjpvjfFNNMccphCvhN
|
||||||
|
rrWzrwzPBBBCZTJgZg
|
||||||
|
gffvjftWddzZtbvdNvgZLwBBMJLSWMDMDDBRWRmS
|
||||||
|
PqPqpqcCnCpVqlClTQQmPMDwPRJJBLLLhS
|
||||||
|
VCGqlHmmHsjtHNsZ
|
||||||
|
mmMlVllWmhmmBzzLGMWlBmpstptPRRZpPMFJSpRsFRFs
|
||||||
|
DgjnndQcNTCCCDNcdSRSdtZPfwfwJSJJ
|
||||||
|
gQjCQqQjHNnjDCgHNcZGZLhHzrLVLGzlrGmb
|
||||||
|
JfwfJpBgJSMphZqtqDDG
|
||||||
|
QcQrssrGCcMCVcMc
|
||||||
|
RnljPRnPjWbGRbjnjbvmSzwHfHgwfJHzdLFSwBFW
|
||||||
|
sBjbHCBCnjvsJCHBsbvwwJGfRNFFFfFGTcrVFffNHRTP
|
||||||
|
zDqdpqMgMtgzthgDtQmzGPTVSTVrVGTFSVFFqNRF
|
||||||
|
zDLdphmmLhMhDhQdlzgLLbjCnWswWWlrZJBswCJJZl
|
||||||
|
FMNrQFgrVwmrpJMwMTMPflbsHPTtlSbftSjCbC
|
||||||
|
zGnGnhnGzDqRLnZLHNHbbbHDlltNSjCl
|
||||||
|
nzddcRzzBnRRvRRhvnQFpmpgggJVcVmMQmgN
|
||||||
|
CCpMlhwwpJpdBlsdcjvtZDFrtmRqmDrsmv
|
||||||
|
gzVPbjSPfSPTTTPnWVSbbvDQZZDZrFWDvFDvmvQQmZ
|
||||||
|
LTbLTPgnTzLVPNNGnNTgVNPlGdHHCphMwHMwjMphlpjccl
|
||||||
|
rMMrqcrmJqJqmCsTPWWGGPzPlPPrGL
|
||||||
|
fnwqwwZwRnVlWWnzWBWlDP
|
||||||
|
jvVHvqfpJmhtHJtH
|
||||||
|
NLMVQjRNTJCTJtZTJc
|
||||||
|
DlGlGHvFHGDgcFCtfhCJFtZc
|
||||||
|
DBHGGGSDvGDPHWBGdBbSvgWDNVMjLLRnmNmjPLNPNcRQVnjj
|
||||||
|
tsGdTJdJtNllzjGRzm
|
||||||
|
HZvvDLLWqbBBMRMRNjVhHRmn
|
||||||
|
vZDCvqqgBDZZjbZDrWqBvpdpFpcdpCJcPTSJJtptpP
|
1000
input/day04
1000
input/day04
File diff suppressed because it is too large
Load Diff
512
input/day05
512
input/day05
@ -0,0 +1,512 @@
|
|||||||
|
[Z] [W] [Z]
|
||||||
|
[D] [M] [L] [P] [G]
|
||||||
|
[S] [N] [R] [S] [F] [N]
|
||||||
|
[N] [J] [W] [J] [F] [D] [F]
|
||||||
|
[N] [H] [G] [J] [H] [Q] [H] [P]
|
||||||
|
[V] [J] [T] [F] [H] [Z] [R] [L] [M]
|
||||||
|
[C] [M] [C] [D] [F] [T] [P] [S] [S]
|
||||||
|
[S] [Z] [M] [T] [P] [C] [D] [C] [D]
|
||||||
|
1 2 3 4 5 6 7 8 9
|
||||||
|
|
||||||
|
move 3 from 9 to 6
|
||||||
|
move 7 from 6 to 2
|
||||||
|
move 1 from 1 to 5
|
||||||
|
move 7 from 7 to 1
|
||||||
|
move 3 from 9 to 7
|
||||||
|
move 1 from 9 to 1
|
||||||
|
move 1 from 7 to 2
|
||||||
|
move 11 from 1 to 8
|
||||||
|
move 9 from 8 to 2
|
||||||
|
move 1 from 6 to 7
|
||||||
|
move 3 from 7 to 3
|
||||||
|
move 7 from 3 to 4
|
||||||
|
move 9 from 8 to 7
|
||||||
|
move 3 from 3 to 1
|
||||||
|
move 2 from 5 to 2
|
||||||
|
move 6 from 7 to 3
|
||||||
|
move 1 from 1 to 7
|
||||||
|
move 1 from 9 to 2
|
||||||
|
move 1 from 5 to 3
|
||||||
|
move 1 from 8 to 2
|
||||||
|
move 2 from 7 to 5
|
||||||
|
move 1 from 1 to 4
|
||||||
|
move 3 from 5 to 8
|
||||||
|
move 2 from 8 to 7
|
||||||
|
move 1 from 8 to 9
|
||||||
|
move 7 from 3 to 1
|
||||||
|
move 8 from 2 to 5
|
||||||
|
move 3 from 7 to 3
|
||||||
|
move 1 from 5 to 1
|
||||||
|
move 1 from 9 to 6
|
||||||
|
move 1 from 7 to 4
|
||||||
|
move 1 from 6 to 3
|
||||||
|
move 1 from 7 to 1
|
||||||
|
move 9 from 4 to 5
|
||||||
|
move 8 from 1 to 2
|
||||||
|
move 3 from 3 to 2
|
||||||
|
move 1 from 1 to 6
|
||||||
|
move 7 from 5 to 6
|
||||||
|
move 1 from 1 to 5
|
||||||
|
move 1 from 3 to 5
|
||||||
|
move 21 from 2 to 3
|
||||||
|
move 8 from 6 to 3
|
||||||
|
move 5 from 4 to 9
|
||||||
|
move 9 from 3 to 8
|
||||||
|
move 17 from 3 to 5
|
||||||
|
move 6 from 2 to 1
|
||||||
|
move 2 from 9 to 1
|
||||||
|
move 3 from 3 to 6
|
||||||
|
move 3 from 2 to 5
|
||||||
|
move 7 from 8 to 2
|
||||||
|
move 3 from 6 to 9
|
||||||
|
move 2 from 2 to 4
|
||||||
|
move 1 from 2 to 6
|
||||||
|
move 2 from 2 to 6
|
||||||
|
move 2 from 6 to 5
|
||||||
|
move 1 from 6 to 1
|
||||||
|
move 2 from 2 to 7
|
||||||
|
move 1 from 8 to 2
|
||||||
|
move 4 from 9 to 1
|
||||||
|
move 4 from 1 to 6
|
||||||
|
move 1 from 8 to 5
|
||||||
|
move 3 from 6 to 9
|
||||||
|
move 1 from 9 to 1
|
||||||
|
move 2 from 9 to 2
|
||||||
|
move 4 from 4 to 5
|
||||||
|
move 1 from 7 to 8
|
||||||
|
move 1 from 7 to 5
|
||||||
|
move 8 from 1 to 8
|
||||||
|
move 1 from 1 to 9
|
||||||
|
move 1 from 6 to 8
|
||||||
|
move 2 from 2 to 6
|
||||||
|
move 1 from 1 to 3
|
||||||
|
move 1 from 2 to 5
|
||||||
|
move 1 from 3 to 4
|
||||||
|
move 3 from 9 to 4
|
||||||
|
move 4 from 4 to 1
|
||||||
|
move 29 from 5 to 1
|
||||||
|
move 2 from 6 to 3
|
||||||
|
move 2 from 3 to 5
|
||||||
|
move 2 from 5 to 9
|
||||||
|
move 7 from 8 to 1
|
||||||
|
move 3 from 8 to 6
|
||||||
|
move 6 from 1 to 6
|
||||||
|
move 2 from 9 to 8
|
||||||
|
move 2 from 5 to 3
|
||||||
|
move 3 from 5 to 6
|
||||||
|
move 2 from 5 to 6
|
||||||
|
move 1 from 5 to 1
|
||||||
|
move 2 from 3 to 9
|
||||||
|
move 1 from 8 to 6
|
||||||
|
move 1 from 8 to 3
|
||||||
|
move 1 from 3 to 5
|
||||||
|
move 5 from 1 to 5
|
||||||
|
move 5 from 6 to 2
|
||||||
|
move 25 from 1 to 9
|
||||||
|
move 9 from 9 to 3
|
||||||
|
move 7 from 6 to 8
|
||||||
|
move 9 from 5 to 9
|
||||||
|
move 2 from 6 to 5
|
||||||
|
move 6 from 9 to 7
|
||||||
|
move 1 from 6 to 8
|
||||||
|
move 3 from 2 to 1
|
||||||
|
move 3 from 8 to 1
|
||||||
|
move 5 from 9 to 6
|
||||||
|
move 3 from 9 to 1
|
||||||
|
move 4 from 6 to 9
|
||||||
|
move 2 from 7 to 4
|
||||||
|
move 1 from 4 to 1
|
||||||
|
move 1 from 6 to 2
|
||||||
|
move 7 from 1 to 6
|
||||||
|
move 1 from 9 to 8
|
||||||
|
move 9 from 3 to 9
|
||||||
|
move 5 from 1 to 7
|
||||||
|
move 1 from 5 to 7
|
||||||
|
move 3 from 1 to 7
|
||||||
|
move 3 from 6 to 7
|
||||||
|
move 8 from 9 to 1
|
||||||
|
move 3 from 7 to 3
|
||||||
|
move 1 from 5 to 6
|
||||||
|
move 3 from 1 to 7
|
||||||
|
move 4 from 1 to 4
|
||||||
|
move 2 from 8 to 5
|
||||||
|
move 1 from 4 to 2
|
||||||
|
move 3 from 2 to 7
|
||||||
|
move 2 from 6 to 4
|
||||||
|
move 1 from 1 to 2
|
||||||
|
move 18 from 7 to 5
|
||||||
|
move 1 from 7 to 5
|
||||||
|
move 1 from 2 to 3
|
||||||
|
move 4 from 5 to 9
|
||||||
|
move 1 from 2 to 1
|
||||||
|
move 2 from 3 to 9
|
||||||
|
move 2 from 3 to 4
|
||||||
|
move 2 from 6 to 5
|
||||||
|
move 1 from 8 to 3
|
||||||
|
move 4 from 9 to 7
|
||||||
|
move 1 from 1 to 9
|
||||||
|
move 3 from 5 to 2
|
||||||
|
move 2 from 8 to 6
|
||||||
|
move 2 from 6 to 1
|
||||||
|
move 5 from 5 to 7
|
||||||
|
move 7 from 9 to 7
|
||||||
|
move 11 from 5 to 9
|
||||||
|
move 3 from 7 to 6
|
||||||
|
move 6 from 4 to 9
|
||||||
|
move 5 from 7 to 3
|
||||||
|
move 6 from 3 to 6
|
||||||
|
move 2 from 1 to 2
|
||||||
|
move 2 from 4 to 9
|
||||||
|
move 6 from 9 to 2
|
||||||
|
move 1 from 7 to 5
|
||||||
|
move 10 from 2 to 9
|
||||||
|
move 4 from 9 to 4
|
||||||
|
move 1 from 4 to 3
|
||||||
|
move 31 from 9 to 3
|
||||||
|
move 1 from 9 to 4
|
||||||
|
move 6 from 3 to 8
|
||||||
|
move 1 from 5 to 8
|
||||||
|
move 5 from 6 to 4
|
||||||
|
move 4 from 3 to 2
|
||||||
|
move 1 from 4 to 6
|
||||||
|
move 22 from 3 to 7
|
||||||
|
move 6 from 4 to 7
|
||||||
|
move 4 from 6 to 2
|
||||||
|
move 8 from 8 to 1
|
||||||
|
move 3 from 2 to 8
|
||||||
|
move 2 from 1 to 9
|
||||||
|
move 1 from 2 to 6
|
||||||
|
move 3 from 2 to 5
|
||||||
|
move 2 from 5 to 4
|
||||||
|
move 2 from 6 to 4
|
||||||
|
move 24 from 7 to 4
|
||||||
|
move 1 from 7 to 4
|
||||||
|
move 2 from 1 to 5
|
||||||
|
move 2 from 9 to 6
|
||||||
|
move 10 from 4 to 6
|
||||||
|
move 3 from 1 to 6
|
||||||
|
move 6 from 7 to 1
|
||||||
|
move 2 from 2 to 3
|
||||||
|
move 1 from 7 to 4
|
||||||
|
move 2 from 8 to 4
|
||||||
|
move 1 from 8 to 5
|
||||||
|
move 4 from 5 to 2
|
||||||
|
move 5 from 4 to 1
|
||||||
|
move 2 from 7 to 8
|
||||||
|
move 2 from 8 to 4
|
||||||
|
move 5 from 6 to 3
|
||||||
|
move 2 from 4 to 3
|
||||||
|
move 1 from 7 to 5
|
||||||
|
move 2 from 3 to 6
|
||||||
|
move 1 from 5 to 1
|
||||||
|
move 3 from 6 to 8
|
||||||
|
move 11 from 4 to 3
|
||||||
|
move 7 from 6 to 1
|
||||||
|
move 3 from 8 to 1
|
||||||
|
move 1 from 2 to 3
|
||||||
|
move 2 from 6 to 9
|
||||||
|
move 2 from 2 to 3
|
||||||
|
move 3 from 4 to 3
|
||||||
|
move 2 from 9 to 4
|
||||||
|
move 1 from 6 to 3
|
||||||
|
move 5 from 1 to 2
|
||||||
|
move 2 from 4 to 3
|
||||||
|
move 24 from 3 to 7
|
||||||
|
move 3 from 3 to 9
|
||||||
|
move 1 from 2 to 6
|
||||||
|
move 1 from 2 to 5
|
||||||
|
move 1 from 6 to 1
|
||||||
|
move 4 from 2 to 1
|
||||||
|
move 2 from 9 to 2
|
||||||
|
move 1 from 2 to 4
|
||||||
|
move 18 from 7 to 5
|
||||||
|
move 1 from 2 to 1
|
||||||
|
move 1 from 9 to 1
|
||||||
|
move 2 from 5 to 7
|
||||||
|
move 13 from 1 to 8
|
||||||
|
move 3 from 4 to 9
|
||||||
|
move 7 from 1 to 7
|
||||||
|
move 13 from 7 to 6
|
||||||
|
move 1 from 9 to 5
|
||||||
|
move 3 from 4 to 3
|
||||||
|
move 1 from 9 to 8
|
||||||
|
move 3 from 1 to 3
|
||||||
|
move 1 from 9 to 5
|
||||||
|
move 2 from 1 to 4
|
||||||
|
move 2 from 7 to 3
|
||||||
|
move 4 from 3 to 1
|
||||||
|
move 1 from 1 to 5
|
||||||
|
move 9 from 6 to 7
|
||||||
|
move 5 from 7 to 1
|
||||||
|
move 2 from 4 to 1
|
||||||
|
move 4 from 6 to 1
|
||||||
|
move 3 from 5 to 3
|
||||||
|
move 3 from 3 to 5
|
||||||
|
move 7 from 1 to 6
|
||||||
|
move 6 from 6 to 1
|
||||||
|
move 1 from 6 to 8
|
||||||
|
move 2 from 7 to 9
|
||||||
|
move 2 from 1 to 5
|
||||||
|
move 1 from 3 to 7
|
||||||
|
move 7 from 5 to 9
|
||||||
|
move 10 from 1 to 5
|
||||||
|
move 8 from 8 to 4
|
||||||
|
move 6 from 4 to 8
|
||||||
|
move 1 from 4 to 1
|
||||||
|
move 2 from 9 to 8
|
||||||
|
move 2 from 1 to 3
|
||||||
|
move 2 from 7 to 3
|
||||||
|
move 1 from 7 to 8
|
||||||
|
move 4 from 3 to 8
|
||||||
|
move 1 from 3 to 2
|
||||||
|
move 20 from 5 to 8
|
||||||
|
move 1 from 2 to 4
|
||||||
|
move 4 from 9 to 4
|
||||||
|
move 4 from 4 to 5
|
||||||
|
move 18 from 8 to 6
|
||||||
|
move 3 from 9 to 6
|
||||||
|
move 1 from 3 to 9
|
||||||
|
move 10 from 8 to 7
|
||||||
|
move 7 from 7 to 9
|
||||||
|
move 7 from 8 to 5
|
||||||
|
move 3 from 7 to 8
|
||||||
|
move 6 from 5 to 1
|
||||||
|
move 6 from 9 to 4
|
||||||
|
move 1 from 9 to 6
|
||||||
|
move 1 from 3 to 6
|
||||||
|
move 1 from 8 to 5
|
||||||
|
move 1 from 9 to 4
|
||||||
|
move 12 from 6 to 7
|
||||||
|
move 5 from 7 to 1
|
||||||
|
move 6 from 8 to 5
|
||||||
|
move 1 from 5 to 1
|
||||||
|
move 3 from 5 to 3
|
||||||
|
move 8 from 4 to 9
|
||||||
|
move 2 from 3 to 7
|
||||||
|
move 4 from 7 to 2
|
||||||
|
move 10 from 5 to 6
|
||||||
|
move 11 from 1 to 6
|
||||||
|
move 4 from 2 to 5
|
||||||
|
move 1 from 3 to 8
|
||||||
|
move 1 from 8 to 9
|
||||||
|
move 1 from 4 to 7
|
||||||
|
move 3 from 7 to 4
|
||||||
|
move 1 from 1 to 6
|
||||||
|
move 1 from 4 to 7
|
||||||
|
move 1 from 7 to 1
|
||||||
|
move 4 from 5 to 2
|
||||||
|
move 3 from 7 to 1
|
||||||
|
move 2 from 4 to 8
|
||||||
|
move 20 from 6 to 8
|
||||||
|
move 4 from 1 to 5
|
||||||
|
move 2 from 5 to 2
|
||||||
|
move 6 from 6 to 1
|
||||||
|
move 5 from 1 to 8
|
||||||
|
move 7 from 6 to 2
|
||||||
|
move 6 from 9 to 7
|
||||||
|
move 2 from 9 to 8
|
||||||
|
move 2 from 7 to 4
|
||||||
|
move 4 from 2 to 6
|
||||||
|
move 3 from 5 to 8
|
||||||
|
move 12 from 8 to 7
|
||||||
|
move 1 from 4 to 3
|
||||||
|
move 1 from 2 to 9
|
||||||
|
move 1 from 9 to 2
|
||||||
|
move 1 from 6 to 8
|
||||||
|
move 1 from 3 to 1
|
||||||
|
move 2 from 1 to 6
|
||||||
|
move 1 from 4 to 2
|
||||||
|
move 3 from 6 to 2
|
||||||
|
move 2 from 5 to 7
|
||||||
|
move 1 from 9 to 8
|
||||||
|
move 6 from 2 to 4
|
||||||
|
move 17 from 7 to 1
|
||||||
|
move 10 from 1 to 7
|
||||||
|
move 4 from 2 to 6
|
||||||
|
move 10 from 7 to 8
|
||||||
|
move 3 from 6 to 2
|
||||||
|
move 4 from 4 to 1
|
||||||
|
move 2 from 6 to 4
|
||||||
|
move 4 from 2 to 6
|
||||||
|
move 1 from 7 to 1
|
||||||
|
move 2 from 4 to 3
|
||||||
|
move 12 from 1 to 7
|
||||||
|
move 5 from 6 to 3
|
||||||
|
move 17 from 8 to 2
|
||||||
|
move 4 from 3 to 8
|
||||||
|
move 1 from 4 to 2
|
||||||
|
move 20 from 8 to 7
|
||||||
|
move 19 from 2 to 6
|
||||||
|
move 7 from 6 to 3
|
||||||
|
move 7 from 3 to 5
|
||||||
|
move 2 from 5 to 7
|
||||||
|
move 4 from 6 to 9
|
||||||
|
move 1 from 4 to 2
|
||||||
|
move 1 from 2 to 1
|
||||||
|
move 2 from 3 to 6
|
||||||
|
move 1 from 2 to 6
|
||||||
|
move 1 from 3 to 1
|
||||||
|
move 4 from 6 to 2
|
||||||
|
move 1 from 5 to 9
|
||||||
|
move 7 from 7 to 3
|
||||||
|
move 7 from 3 to 8
|
||||||
|
move 5 from 8 to 1
|
||||||
|
move 2 from 8 to 3
|
||||||
|
move 1 from 2 to 1
|
||||||
|
move 3 from 5 to 6
|
||||||
|
move 1 from 3 to 9
|
||||||
|
move 2 from 9 to 2
|
||||||
|
move 8 from 1 to 7
|
||||||
|
move 3 from 7 to 6
|
||||||
|
move 2 from 2 to 4
|
||||||
|
move 21 from 7 to 3
|
||||||
|
move 10 from 3 to 1
|
||||||
|
move 2 from 9 to 2
|
||||||
|
move 7 from 3 to 4
|
||||||
|
move 3 from 3 to 7
|
||||||
|
move 4 from 2 to 3
|
||||||
|
move 3 from 7 to 8
|
||||||
|
move 1 from 3 to 6
|
||||||
|
move 1 from 3 to 2
|
||||||
|
move 4 from 7 to 9
|
||||||
|
move 10 from 1 to 6
|
||||||
|
move 1 from 5 to 9
|
||||||
|
move 6 from 7 to 2
|
||||||
|
move 24 from 6 to 5
|
||||||
|
move 2 from 8 to 4
|
||||||
|
move 1 from 8 to 6
|
||||||
|
move 2 from 2 to 9
|
||||||
|
move 5 from 2 to 7
|
||||||
|
move 1 from 2 to 9
|
||||||
|
move 11 from 4 to 1
|
||||||
|
move 3 from 3 to 2
|
||||||
|
move 4 from 9 to 7
|
||||||
|
move 1 from 1 to 5
|
||||||
|
move 1 from 6 to 1
|
||||||
|
move 5 from 1 to 9
|
||||||
|
move 5 from 9 to 7
|
||||||
|
move 5 from 7 to 5
|
||||||
|
move 23 from 5 to 2
|
||||||
|
move 5 from 7 to 8
|
||||||
|
move 6 from 5 to 6
|
||||||
|
move 1 from 3 to 7
|
||||||
|
move 1 from 5 to 7
|
||||||
|
move 6 from 7 to 8
|
||||||
|
move 3 from 6 to 1
|
||||||
|
move 2 from 8 to 7
|
||||||
|
move 4 from 2 to 1
|
||||||
|
move 4 from 8 to 5
|
||||||
|
move 7 from 2 to 3
|
||||||
|
move 1 from 7 to 4
|
||||||
|
move 1 from 4 to 7
|
||||||
|
move 4 from 3 to 8
|
||||||
|
move 6 from 1 to 9
|
||||||
|
move 4 from 8 to 6
|
||||||
|
move 3 from 1 to 5
|
||||||
|
move 3 from 8 to 5
|
||||||
|
move 1 from 1 to 8
|
||||||
|
move 3 from 9 to 1
|
||||||
|
move 3 from 6 to 7
|
||||||
|
move 1 from 7 to 9
|
||||||
|
move 3 from 8 to 3
|
||||||
|
move 8 from 5 to 7
|
||||||
|
move 11 from 2 to 8
|
||||||
|
move 5 from 8 to 3
|
||||||
|
move 1 from 8 to 7
|
||||||
|
move 10 from 3 to 4
|
||||||
|
move 2 from 5 to 8
|
||||||
|
move 3 from 9 to 2
|
||||||
|
move 1 from 9 to 6
|
||||||
|
move 7 from 2 to 7
|
||||||
|
move 6 from 9 to 4
|
||||||
|
move 1 from 8 to 5
|
||||||
|
move 3 from 6 to 8
|
||||||
|
move 1 from 5 to 3
|
||||||
|
move 2 from 3 to 1
|
||||||
|
move 6 from 1 to 3
|
||||||
|
move 13 from 7 to 5
|
||||||
|
move 16 from 4 to 3
|
||||||
|
move 2 from 1 to 5
|
||||||
|
move 5 from 5 to 4
|
||||||
|
move 11 from 3 to 4
|
||||||
|
move 2 from 7 to 1
|
||||||
|
move 7 from 3 to 1
|
||||||
|
move 2 from 8 to 3
|
||||||
|
move 8 from 1 to 9
|
||||||
|
move 12 from 4 to 8
|
||||||
|
move 1 from 1 to 4
|
||||||
|
move 2 from 6 to 2
|
||||||
|
move 3 from 7 to 8
|
||||||
|
move 2 from 4 to 6
|
||||||
|
move 5 from 8 to 1
|
||||||
|
move 3 from 7 to 5
|
||||||
|
move 6 from 5 to 7
|
||||||
|
move 2 from 2 to 5
|
||||||
|
move 1 from 4 to 9
|
||||||
|
move 5 from 1 to 8
|
||||||
|
move 6 from 3 to 1
|
||||||
|
move 7 from 5 to 7
|
||||||
|
move 7 from 9 to 2
|
||||||
|
move 1 from 6 to 7
|
||||||
|
move 1 from 1 to 9
|
||||||
|
move 2 from 5 to 3
|
||||||
|
move 2 from 9 to 6
|
||||||
|
move 13 from 7 to 3
|
||||||
|
move 2 from 6 to 1
|
||||||
|
move 1 from 9 to 2
|
||||||
|
move 16 from 8 to 7
|
||||||
|
move 6 from 8 to 5
|
||||||
|
move 3 from 2 to 5
|
||||||
|
move 4 from 2 to 1
|
||||||
|
move 3 from 1 to 8
|
||||||
|
move 2 from 8 to 9
|
||||||
|
move 1 from 8 to 7
|
||||||
|
move 1 from 2 to 1
|
||||||
|
move 8 from 3 to 1
|
||||||
|
move 1 from 4 to 5
|
||||||
|
move 1 from 6 to 3
|
||||||
|
move 2 from 9 to 7
|
||||||
|
move 5 from 1 to 4
|
||||||
|
move 15 from 7 to 9
|
||||||
|
move 11 from 9 to 3
|
||||||
|
move 7 from 1 to 3
|
||||||
|
move 2 from 1 to 6
|
||||||
|
move 1 from 6 to 3
|
||||||
|
move 2 from 4 to 5
|
||||||
|
move 2 from 4 to 9
|
||||||
|
move 7 from 5 to 9
|
||||||
|
move 5 from 9 to 3
|
||||||
|
move 1 from 1 to 6
|
||||||
|
move 5 from 5 to 9
|
||||||
|
move 1 from 4 to 8
|
||||||
|
move 1 from 8 to 4
|
||||||
|
move 3 from 7 to 4
|
||||||
|
move 8 from 9 to 5
|
||||||
|
move 1 from 6 to 4
|
||||||
|
move 4 from 9 to 3
|
||||||
|
move 1 from 9 to 3
|
||||||
|
move 23 from 3 to 1
|
||||||
|
move 12 from 1 to 2
|
||||||
|
move 6 from 1 to 9
|
||||||
|
move 5 from 9 to 7
|
||||||
|
move 3 from 3 to 7
|
||||||
|
move 6 from 4 to 3
|
||||||
|
move 1 from 6 to 8
|
||||||
|
move 6 from 1 to 2
|
||||||
|
move 3 from 7 to 3
|
||||||
|
move 3 from 2 to 5
|
||||||
|
move 10 from 3 to 5
|
||||||
|
move 1 from 1 to 8
|
||||||
|
move 12 from 2 to 5
|
||||||
|
move 3 from 2 to 9
|
||||||
|
move 2 from 8 to 4
|
||||||
|
move 13 from 5 to 1
|
||||||
|
move 2 from 9 to 2
|
||||||
|
move 2 from 1 to 3
|
||||||
|
move 11 from 3 to 1
|
||||||
|
move 2 from 2 to 1
|
||||||
|
move 2 from 1 to 9
|
||||||
|
move 16 from 1 to 7
|
||||||
|
move 17 from 5 to 8
|
||||||
|
move 1 from 1 to 2
|
||||||
|
move 3 from 9 to 6
|
@ -0,0 +1 @@
|
|||||||
|
rdzrddbgdbbqtbqbrrznznjzjjctcbtttrvrwwsvwssjfjcjnjzzqgzgzsggfddvnnrbbwgwfwgfgpgrprgrprmmqjmqmvmlmmgjmmgqmqppqgqlqmllszsmzzwfzfqzzgcccmggvfgvvzlvzlznnjfjsscrsrprcrscsqsfqfggrrhccpnpwphwhchfhtfhttzpzwzjzqzjjqjdqqnvqnqjqbqcbqccdllbcblbjljgjbgbhhgphghjhrrvbrvbrvvfggwbwnnghgwhhpbpgphpnpgpqqzvqzqtzzngzngnjnnffgbgbvvjvqvwwqnwqnnvrnnfgfttcftcfczzpbbdlbdbhbssrggtfgfbgfgfnffqsfqfcqqqwvvqpphfpfcfrrjmjhjrjbblcbbznzwwpbwwsvvwnvvzjvzzmllrpllqffplpwlpwwlpwwmnmrrlggvssjggdjjsffbtthlhsswvwjjbtbjbsswqsshppddcjjlrlttwgtwwcnwcncmcpmpnnhndnccqscqqzqpplglvvpggcvvhnhmhqqsvvhcvvjpphbhnndpdbdndjnnmccmjmhmrrlcrrfzfnndldffstffhqffhcffhbhwhzhnhrhprhhtqtztntnptnppjdpdqdzqqpzprrqbqmqhmqqmhqqjttlrrqbqnqdnnrqqtqfqjjdfjfdjjsnspptltlgttmctcgttcthcttdpppzphpnhhvthtccbvccpplpwwfgwfffhfbbrsbbgppnhpnhhwnnnrprcpcncffrqqpjprpddjnddnccqtcthhfqfnnnlrrzhhmvvczzlbzbrzbbjpjpbbjttmwtwbtbqqtssgdsdsmsmbsmsfftltmtwwsswbwdbdwbbblgbbqpbqbmbgmbgmbbvcvbbmrrldlpdpqqnvvrzzcddjsdjjfvjvvndnvvrsvrsvrsrmsswlswlssqllfmlffmwmttjgttzgtggghrhprppbgbdgdtgddvmdvvbmmchhjppczzglzglzglzgggsmsrrsttgddmvvhddvdhvvcfcvvglvlmvmdvmdvdcdvvgfftccljllmssrvvqhvvnlnplnlglrlvrvfvrrgjjzqjjzcjcvcsvvbppgrrbdrdsrddqsspwssdlltlcttgngzglgfgzfzhfzhfhnffmsspvsscjjrbbpgbbfgbffhggzpznzmnmcmzmdzmzjzddcsscgssdnddjbdjdtdzdwwshwhfhtthjhsjjfjvvdnnmzmtmmlrlblzzmmspsnpnbnvvczvzsszrrsgsbsrrlprrzfrrjdrdbdhdvvwrvvrfvrrvwrrqlqwwqjjpwwffdvffwfbwwdrwdrddhhhjghjhvhccgbcbvblllbwlwtlldbdzbbdpbbqmmglmllvwwzmzhhfnfcnfcfddvrvhvbvzvbvhvthtrtppsccggdgpghgfhhhnwnmmwfwtffpjfppmdpdhppvwvfvvhdhzhtzhtzzplpspmpnpzpgzgqgvvqcqcqmqffzszwzfwfzzcmchhmgmppgwwvffnnvhhttvtjvjgjljmmfcmmzmvvjfjggppqmpqqswsnwwdvwdvwdwjwrrrtprpqrrsddsshgssbbpbgpbbprprzppsnsbszszccddfcftcfczffchfcfjjffjwwsbbvfvpfprpbczqdnvrqrlhsrzvlvgzbqpwgpmgftzfvtlnlqrtmpjfstmsrbfjldtmhvvqwznrcflbvmsnbzcrjvbzgvvmwlzcwggwvhnpscnwhjldzjvmtfdgvptfhjtdtwfjntzqtswqgwvnfgqhqpdvdchfqjzfhgjmdstmchppcvgpdfrqbrhrvdvzbtnnrpqsnmnljjzgzqfnzmlvbzmwzfbfszvfsqdnqfstpjglwtcdjpmdfqzfcsngbcvvjvdzlnzndcggcdtdjpwgvfzlfdqpgbgfjjfvgtwwrgtrfcpfvmzvrwrftpfdprzmcmrpnjpfrdvbmlrfzrjcdzhvwbpgmbpdnqggjdpqttgnqbtjfmrglqbvcfjwghrqtcgjddhwpntjgtghmfgvjdhbzzgmfnrrrgvdmsfbhndfcwlbbtsdcbpgfpbvnwmpwdpjlvcbcgnwjzftsfqhvwdshzltrmqpcsngfzrvfwhffrcjzlfqjqdbcntdwhfrfnrzwftqhlfjpjqpngjqjcnfnrpmmbprdtzgsvsdjpzsnzzmzdfjplfhzqrnrwggcvrrmqzwlvslwvtvhbgwmjmnzftrbfhdrzszcvmdhgfvwgwgsgqtpwgvpvfrszczmsmstwhnhtnftmmmjblpchrnrdwlnhrvqtbwqwdchfjbcldmjmjzwlcngfgfvmblgmnwtwvjmzswzmpvdjtcfgcpvvqhrfnwcczrrrhwwvfrngwmlstqcvvrqrshwdvrgtgbffvlwtvwhvlcwwqgspnfmndbsbpvdbjwdlfntwrrmtgsdtwbfmjjcjfvsvltwdjmvswwpchpdtsjmbbgcgtddcbprwznsldmwflrgcrgfflzwllrzcrgdgqgsvrqmspqzsrzvppztrhlpsnqdlhmghdcrppvbljsnrjgcwhpvmlgcnswrjjbjltwnctqbqsffbcfpclhcbrnsjlmrstpngbvcfcbjstgvzwfgcsqbwgqqblsnmfddprrqmpqgfrjbhfptrdvltcrmtrcqgcdfpjhjptzngzqdghqhpsfwlmrwgfhldzpfrbtzzgsblcfmwztjmtjzgwrpttvwfhbntvsgnfvbpfpnscdspmcvncsqltzqnwczvdbtphwrdtjcszmhbpcfnvbrbgfpnrrhvhzlrglthpldrlfscpvpvttvjtfdrqpjvnwvmscdvclbnzfvppslzgmglrvvdvpsbsfhflnjbdnpqzjzlrfgwgjvwvpthjptftlzppmnmrrpfvdhgwfzfdnnbhqpwrzvvdgtcrflwfjgbmvbgsnqzqtmsvrdlfmlbqqdnfftljbtphnpqqrgbrlzrbbhlgvjpcdbmtvzlpqhbvjpmhpdmtrmjwvzrbfrdrdfmwsfvllljdwmnqlgcnzvpphwmlmstcsljvmljcjprtgmzfssgbtjlttssfzbcqbgnjnvrwzchtwtwdtfwngdflwzjrhzdlrrqfnsztvdbzqfwfzppqrghrhzsqtwqstsfspddpjrpffhgqvspzwmlzwhtzqqldqbwlsrqhlmvhhmzjpdsrgdcvqnfpldnmblgvvssrcdnjqvcgwtwmhqdcwtsqqhbntvjnlbljlqjqglggvpqncpdzztlvhhlghtrncfcdhjtzwjqdhlntjfrzccbnmglmnzwvplclvcmnsppqjhbggbzncqlcfnzbbzdjrvcdthcqwjzjvdbjddcbjchwfgbjhwqpzbpgsdtlwlphtvhwddjdbwbpsnqhnffqptcrljcqzzhszdfpdfsgflhwwsgbfcnwrbdqflnrcwddwwmfztlbswlzhtzzcllnvbtqgjsdzmhcpnnqpdpqgdntlfwgvddgqvhqhrbvstsmzrmgwslpdjlsbgthfhgnlftbqdnzsvcrrmllcjvdlqrzbvrbrjcbpttsvwcrnlvvbnjvfgldzmtflvmzqdgbnjcgctllrldgzltwlswmfbbwjmcqpldhhdsmqpbvnjprdqnvrbjhrjzqwqfrfqwngwtwjjmzdbqmpmvqrprjhnhnrlmlgpfwwzjhlgmbzdlpshcqpnlgrqvprbspmdznzzsvhdlzwmttpdnlrlqjllqnshjllvvsrblscjcmbcqlsgpcjlmmpgwrvjnjzvzfgvgghwqfjswjbjghmzcgdpsjwhbnzmbhtzgnchpbrmnfdbfscgzldpqmvprjpvcwtwdfjblfshffwqctdphhnhngsjlrqtqprpjhwqcbmhctqbpdtpzvbbfncfrcvmbfvqmbmqjvgtdvspfqfbqnmjwhzbcpcfgbhtllbsssqntfbmsmlwhjchgcsrvsfznbmspwwszqfnwzzljfnvcwnwmgfzqfvmwwwdjd
|
23
input/day07
23
input/day07
@ -0,0 +1,23 @@
|
|||||||
|
$ cd /
|
||||||
|
$ ls
|
||||||
|
dir a
|
||||||
|
14848514 b.txt
|
||||||
|
8504156 c.dat
|
||||||
|
dir d
|
||||||
|
$ cd a
|
||||||
|
$ ls
|
||||||
|
dir e
|
||||||
|
29116 f
|
||||||
|
2557 g
|
||||||
|
62596 h.lst
|
||||||
|
$ cd e
|
||||||
|
$ ls
|
||||||
|
584 i
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd d
|
||||||
|
$ ls
|
||||||
|
4060174 j
|
||||||
|
8033020 d.log
|
||||||
|
5626152 d.ext
|
||||||
|
7214296 k
|
@ -1,5 +1,6 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
#include <iostream>
|
#include <iostream>
|
||||||
|
#include <sstream>
|
||||||
#include <fstream>
|
#include <fstream>
|
||||||
#include <chrono>
|
#include <chrono>
|
||||||
#include <string>
|
#include <string>
|
||||||
|
@ -1,11 +1,108 @@
|
|||||||
#include "../aoc2022.h"
|
#include "../aoc2022.h"
|
||||||
|
|
||||||
|
#define WIN 6
|
||||||
|
#define DRAW 3
|
||||||
|
#define LOSS 0
|
||||||
|
|
||||||
|
enum EGameMoves {
|
||||||
|
eRock = 1,
|
||||||
|
ePaper = 2,
|
||||||
|
eScissors = 3
|
||||||
|
};
|
||||||
|
|
||||||
|
struct SGameMove {
|
||||||
|
EGameMoves move, losesTo, winsTo;
|
||||||
|
};
|
||||||
|
|
||||||
|
enum ERules {
|
||||||
|
eTheirRules,
|
||||||
|
eMyRules
|
||||||
|
};
|
||||||
|
|
||||||
template <typename Output>
|
template <typename Output>
|
||||||
struct SDay02 : public SDay<Output> {
|
struct SDay02 : public SDay<Output> {
|
||||||
//Class constructor
|
//Class constructor
|
||||||
using SDay<Output>::SDay;
|
using SDay<Output>::SDay;
|
||||||
|
|
||||||
|
//Map to store the collection of alises and plays
|
||||||
|
std::map<char, SGameMove*> pairs;
|
||||||
|
std::map<EGameMoves, EGameMoves> losingMoves;
|
||||||
|
|
||||||
|
SGameMove rock{ eRock, ePaper, eScissors };
|
||||||
|
SGameMove paper{ ePaper, eScissors, eRock };
|
||||||
|
SGameMove scissors{ eScissors, eRock, ePaper };
|
||||||
|
|
||||||
//Solutions to both days
|
//Solutions to both days
|
||||||
Output part1() override final { return Output(); }
|
Output part1() override final {
|
||||||
Output part2() override final { return Output(); }
|
//'A' 'X' = rock and loses to paper
|
||||||
|
pairs['A'] = &rock;
|
||||||
|
pairs['X'] = &rock; // Means Lose
|
||||||
|
//'B' 'Y' = paper and loses to scissors
|
||||||
|
pairs['B'] = &paper;
|
||||||
|
pairs['Y'] = &paper; //Draw
|
||||||
|
//'C' 'Z' = scissors and loses to rock
|
||||||
|
pairs['C'] = &scissors;
|
||||||
|
pairs['Z'] = &scissors; //Win
|
||||||
|
|
||||||
|
return playGame(eTheirRules);
|
||||||
|
}
|
||||||
|
Output part2() override final {
|
||||||
|
return playGame(eMyRules);
|
||||||
|
}
|
||||||
|
|
||||||
|
int theirRules(const SGameMove *player1, const SGameMove *player2) {
|
||||||
|
|
||||||
|
if (player1->losesTo == player2->move)
|
||||||
|
{//We Win
|
||||||
|
return (WIN + player2->move);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (player1->move == player2->move)
|
||||||
|
{//We Draw
|
||||||
|
return (DRAW + player2->move);
|
||||||
|
}
|
||||||
|
|
||||||
|
//We Lose
|
||||||
|
return (LOSS + player2->move);
|
||||||
|
}
|
||||||
|
|
||||||
|
int myRules(const SGameMove *player1, const SGameMove *player2) {
|
||||||
|
if (player2->move == EGameMoves::eRock)
|
||||||
|
{//We must Lose
|
||||||
|
return (LOSS + player1->winsTo);
|
||||||
|
}
|
||||||
|
if (player2->move == EGameMoves::ePaper)
|
||||||
|
{//We must Draw
|
||||||
|
return (DRAW + player1->move);
|
||||||
|
}
|
||||||
|
//We must Win
|
||||||
|
return (WIN + player1->losesTo);
|
||||||
|
}
|
||||||
|
|
||||||
|
int playGame(ERules rules) {
|
||||||
|
this->input.clear();
|
||||||
|
this->input.seekg(0, std::ios::beg);
|
||||||
|
std::string line{ "" };
|
||||||
|
int score{ 0 };
|
||||||
|
|
||||||
|
SGameMove *player1, *player2;
|
||||||
|
|
||||||
|
while (std::getline(this->input, line))
|
||||||
|
{
|
||||||
|
player1 = pairs[line[0]];
|
||||||
|
player2 = pairs[line[2]];
|
||||||
|
|
||||||
|
if (rules == eTheirRules)
|
||||||
|
{//part1
|
||||||
|
score += theirRules(player1, player2);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{//part2
|
||||||
|
score += myRules(player1, player2);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return score;
|
||||||
|
}
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -1,11 +1,110 @@
|
|||||||
#include "../aoc2022.h"
|
#include "../aoc2022.h"
|
||||||
|
|
||||||
|
#define LOWEROFFSET 96
|
||||||
|
#define UPPEROFFSET 38
|
||||||
|
|
||||||
|
enum ECheckType {
|
||||||
|
eIndividual,
|
||||||
|
eGrouped
|
||||||
|
};
|
||||||
|
|
||||||
template <typename Output>
|
template <typename Output>
|
||||||
struct SDay03 : public SDay<Output> {
|
struct SDay03 : public SDay<Output> {
|
||||||
//Class constructor
|
//Class constructor
|
||||||
using SDay<Output>::SDay;
|
using SDay<Output>::SDay;
|
||||||
|
|
||||||
//Solutions to both days
|
//Solutions to both days
|
||||||
Output part1() override final { return Output(); }
|
Output part1() override final {
|
||||||
Output part2() override final { return Output(); }
|
return readBackpacks(eIndividual);
|
||||||
|
}
|
||||||
|
Output part2() override final {
|
||||||
|
return readBackpacks(eGrouped);
|
||||||
|
}
|
||||||
|
|
||||||
|
int readBackpacks(ECheckType checkType) {
|
||||||
|
this->input.clear();
|
||||||
|
this->input.seekg(0, std::ios::beg);
|
||||||
|
std::string line{ "" };
|
||||||
|
int total{ 0 };
|
||||||
|
|
||||||
|
int counter{ 0 };
|
||||||
|
std::string bags[3];
|
||||||
|
|
||||||
|
while (std::getline(this->input, line))
|
||||||
|
{
|
||||||
|
|
||||||
|
if (checkType == eIndividual)
|
||||||
|
{//Checking an individual bag
|
||||||
|
std::string compartment1, compartment2;
|
||||||
|
for (int i = 0; i < line.size(); i++)
|
||||||
|
{
|
||||||
|
if (i < (line.size() / 2))
|
||||||
|
compartment1 += line[i];
|
||||||
|
else
|
||||||
|
compartment2 += line[i];
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
//Find the items that appear in both backpacks and get priority
|
||||||
|
std::map<char, int> inCompartment1 = getMap(compartment1);
|
||||||
|
std::map<char, int> duplicates = findDuplicates(inCompartment1, compartment2);
|
||||||
|
total += getDuplicatePriority(duplicates);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{//Checking a group of bags
|
||||||
|
counter++;
|
||||||
|
bags[counter % 3] = line;
|
||||||
|
if (counter % 3 == 0)
|
||||||
|
{
|
||||||
|
std::map<char, int> bag1 = getMap(bags[0]);
|
||||||
|
std::map<char, int> bag2 = findDuplicates(bag1, bags[1]);
|
||||||
|
std::map<char, int> bag3 = findDuplicates(bag2, bags[2]);
|
||||||
|
total += getDuplicatePriority(bag3);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return total;
|
||||||
|
}
|
||||||
|
|
||||||
|
//Function that take in a prefilled map and checks through a string for duplicates
|
||||||
|
std::map<char, int> findDuplicates(std::map<char, int>& duplicates, std::string backpack) {
|
||||||
|
std::map<char, int> newDuplicates;
|
||||||
|
|
||||||
|
for (int i = 0; i < backpack.size(); i++)
|
||||||
|
{
|
||||||
|
if (duplicates[backpack[i]] && newDuplicates.count(backpack[i]) == 0)
|
||||||
|
{//If the item is in bothcompartments
|
||||||
|
newDuplicates[backpack[i]] = duplicates[backpack[i]];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return newDuplicates;
|
||||||
|
}
|
||||||
|
|
||||||
|
//Function that takes in a string and generates a map of all of the items in it
|
||||||
|
std::map<char, int> getMap(std::string &backpack) {
|
||||||
|
std::map<char, int> characters;
|
||||||
|
|
||||||
|
for (int i = 0; i < backpack.size(); i++)
|
||||||
|
{
|
||||||
|
characters[backpack[i]] = getItemPriority(backpack[i]);
|
||||||
|
}
|
||||||
|
return characters;
|
||||||
|
}
|
||||||
|
|
||||||
|
//Function that goes through a map and returns the total priority for the maps
|
||||||
|
int getDuplicatePriority(std::map<char, int> &duplicates) {
|
||||||
|
int total{ 0 };
|
||||||
|
for (auto& i : duplicates)
|
||||||
|
{//Add the sum of the duplicate items
|
||||||
|
total += i.second;
|
||||||
|
}
|
||||||
|
return total;
|
||||||
|
}
|
||||||
|
|
||||||
|
//Get the proiority of an item in the backpack
|
||||||
|
int getItemPriority(char item) {
|
||||||
|
if (islower(item))
|
||||||
|
return item - LOWEROFFSET;
|
||||||
|
return item - UPPEROFFSET;
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
@ -1,11 +1,108 @@
|
|||||||
#include "../aoc2022.h"
|
#include "../aoc2022.h"
|
||||||
|
|
||||||
|
enum EOverlapType {
|
||||||
|
eContains,
|
||||||
|
eOverlap
|
||||||
|
};
|
||||||
|
|
||||||
|
struct SBound {
|
||||||
|
int lower, upper;
|
||||||
|
|
||||||
|
SBound(const std::string &input) {
|
||||||
|
std::vector<std::string> bounds;
|
||||||
|
std::string temp;
|
||||||
|
|
||||||
|
for (int i = 0; i < input.size(); i++)
|
||||||
|
{
|
||||||
|
if (input[i] == '-')
|
||||||
|
{//Check if we are going onto the upper bound
|
||||||
|
bounds.push_back(temp);
|
||||||
|
temp = "";
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
temp += input[i];
|
||||||
|
}
|
||||||
|
this->lower = std::stoi(bounds[0]);
|
||||||
|
this->upper = std::stoi(temp);
|
||||||
|
}
|
||||||
|
|
||||||
|
//Check if the bounds contains another
|
||||||
|
bool contains(const SBound &bound) {
|
||||||
|
if (bound.lower >= this->lower && bound.upper <= this->upper)
|
||||||
|
return true;
|
||||||
|
if (this->lower >= bound.lower && this->upper <= bound.upper)
|
||||||
|
return true;
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
//Check if the 2 bounds overlap eachother
|
||||||
|
bool overlaps(const SBound& bound) {
|
||||||
|
if (this->upper >= bound.lower && this->lower <= bound.upper)
|
||||||
|
return true;
|
||||||
|
if (this->lower <= bound.upper && this->upper >= bound.lower)
|
||||||
|
return true;
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
template <typename Output>
|
template <typename Output>
|
||||||
struct SDay04 : public SDay<Output> {
|
struct SDay04 : public SDay<Output> {
|
||||||
//Class constructor
|
//Class constructor
|
||||||
using SDay<Output>::SDay;
|
using SDay<Output>::SDay;
|
||||||
|
|
||||||
|
int readBounds(EOverlapType overlapType) {
|
||||||
|
this->input.clear();
|
||||||
|
this->input.seekg(0, std::ios::beg);
|
||||||
|
std::string line{ "" };
|
||||||
|
int total{ 0 };
|
||||||
|
|
||||||
|
while (std::getline(this->input, line))
|
||||||
|
{
|
||||||
|
std::vector<SBound> bounds = getBounds(line);
|
||||||
|
|
||||||
|
if (overlapType == eContains)
|
||||||
|
{//Check if the bounds contain eachother
|
||||||
|
if (bounds[0].contains(bounds[1]))
|
||||||
|
total++;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{//Check if the bounds overlap
|
||||||
|
if (bounds[0].overlaps(bounds[1]))
|
||||||
|
total++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return total;
|
||||||
|
}
|
||||||
|
|
||||||
|
//Takes the input string and should return 2 sets of bounds
|
||||||
|
std::vector<SBound> getBounds(const std::string &input) {
|
||||||
|
std::vector<SBound> bounds;
|
||||||
|
std::string bound1, bound2;
|
||||||
|
bool split{ false };
|
||||||
|
|
||||||
|
for (int i = 0; i < input.size(); i++)
|
||||||
|
{
|
||||||
|
if (input[i] == ',')
|
||||||
|
{//Check if we are going onto the second bound
|
||||||
|
split = true;
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
if (!split)
|
||||||
|
{//First Bound
|
||||||
|
bound1 += input[i];
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{//Second Bound
|
||||||
|
bound2 += input[i];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
bounds.push_back(SBound(bound1));
|
||||||
|
bounds.push_back(SBound(bound2));
|
||||||
|
|
||||||
|
return bounds;
|
||||||
|
}
|
||||||
|
|
||||||
//Solutions to both days
|
//Solutions to both days
|
||||||
Output part1() override final { return Output(); }
|
Output part1() override final { return readBounds(eContains); }
|
||||||
Output part2() override final { return Output(); }
|
Output part2() override final { return readBounds(eOverlap); }
|
||||||
};
|
};
|
@ -1,11 +1,133 @@
|
|||||||
#include "../aoc2022.h"
|
#include "../aoc2022.h"
|
||||||
|
|
||||||
|
enum EMoveType {
|
||||||
|
eManual,
|
||||||
|
eCrateMover9001
|
||||||
|
};
|
||||||
|
|
||||||
template <typename Output>
|
template <typename Output>
|
||||||
struct SDay05 : public SDay<Output> {
|
struct SDay05 : public SDay<Output> {
|
||||||
//Class constructor
|
//Class constructor
|
||||||
using SDay<Output>::SDay;
|
using SDay<Output>::SDay;
|
||||||
|
|
||||||
|
std::vector<std::stack<char>> stacks;
|
||||||
|
|
||||||
//Solutions to both days
|
//Solutions to both days
|
||||||
Output part1() override final { return Output(); }
|
Output part1() override final {
|
||||||
Output part2() override final { return Output(); }
|
parseStacks();
|
||||||
|
runInstructions(eManual);
|
||||||
|
std::string ans = getTops();
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
Output part2() override final {
|
||||||
|
parseStacks();
|
||||||
|
runInstructions(eCrateMover9001);
|
||||||
|
std::string ans = getTops();
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
void parseStacks() {
|
||||||
|
stacks.clear();
|
||||||
|
this->input.clear();
|
||||||
|
this->input.seekg(0, std::ios::beg);
|
||||||
|
std::stack<std::string> stackStrings;
|
||||||
|
int stackCount{ 0 };
|
||||||
|
std::string line{ "" };
|
||||||
|
|
||||||
|
while (std::getline(this->input, line))
|
||||||
|
{
|
||||||
|
if (line == "")
|
||||||
|
break; //We have finished collecting stack strings
|
||||||
|
stackStrings.push(line);
|
||||||
|
}
|
||||||
|
|
||||||
|
//Get the number of stacks needed
|
||||||
|
line = stackStrings.top();
|
||||||
|
stackCount = line[line.size()-2]-48;
|
||||||
|
stackStrings.pop();
|
||||||
|
|
||||||
|
for (int i = 0; i < stackCount; i++)
|
||||||
|
stacks.push_back(std::stack<char>());
|
||||||
|
|
||||||
|
int index = 1;
|
||||||
|
while (!stackStrings.empty())
|
||||||
|
{
|
||||||
|
line = stackStrings.top();
|
||||||
|
int index = 1;
|
||||||
|
for (int i = 0; i < stackCount; i++)
|
||||||
|
{
|
||||||
|
if (line[index] != ' ')
|
||||||
|
stacks[i].push(line[index]);
|
||||||
|
index += 4;
|
||||||
|
}
|
||||||
|
stackStrings.pop();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void runInstructions(EMoveType moveType) {
|
||||||
|
std::string line{ "" };
|
||||||
|
|
||||||
|
while (std::getline(this->input, line))
|
||||||
|
{
|
||||||
|
std::stringstream ss;
|
||||||
|
std::vector<int> nums;
|
||||||
|
|
||||||
|
/* Storing the whole string into string stream */
|
||||||
|
ss << line;
|
||||||
|
|
||||||
|
/* Running loop till the end of the stream */
|
||||||
|
std::string temp;
|
||||||
|
int found;
|
||||||
|
while (!ss.eof()) {
|
||||||
|
|
||||||
|
/* extracting word by word from stream */
|
||||||
|
ss >> temp;
|
||||||
|
|
||||||
|
/* Checking the given word is integer or not */
|
||||||
|
if (std::stringstream(temp) >> found)
|
||||||
|
nums.push_back(found);
|
||||||
|
|
||||||
|
/* To save from space at the end of string */
|
||||||
|
temp = "";
|
||||||
|
}
|
||||||
|
|
||||||
|
moveCrates(moveType, nums);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void moveCrates(EMoveType moveType, const std::vector<int> &nums) {
|
||||||
|
//run each step
|
||||||
|
std::stack<char> tempStack;
|
||||||
|
for (int i = 0; i < nums[0]; i++)
|
||||||
|
{
|
||||||
|
if (stacks[static_cast<size_t>(nums[1]) - 1].empty())
|
||||||
|
break;
|
||||||
|
if (moveType == eCrateMover9001)
|
||||||
|
{
|
||||||
|
tempStack.push(stacks[static_cast<size_t>(nums[1]) - 1].top());
|
||||||
|
}
|
||||||
|
else
|
||||||
|
stacks[static_cast<size_t>(nums[2]) - 1].push(stacks[static_cast<size_t>(nums[1]) - 1].top());
|
||||||
|
|
||||||
|
stacks[static_cast<size_t>(nums[1]) - 1].pop();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (moveType == eCrateMover9001)
|
||||||
|
{
|
||||||
|
while (!tempStack.empty())
|
||||||
|
{
|
||||||
|
stacks[static_cast<size_t>(nums[2]) - 1].push(tempStack.top());
|
||||||
|
tempStack.pop();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
std::string getTops() {
|
||||||
|
std::string output;
|
||||||
|
for (auto& stack : stacks)
|
||||||
|
{
|
||||||
|
output += stack.top();
|
||||||
|
}
|
||||||
|
return output;
|
||||||
|
}
|
||||||
};
|
};
|
@ -6,6 +6,50 @@ struct SDay06 : public SDay<Output> {
|
|||||||
using SDay<Output>::SDay;
|
using SDay<Output>::SDay;
|
||||||
|
|
||||||
//Solutions to both days
|
//Solutions to both days
|
||||||
Output part1() override final { return Output(); }
|
Output part1() override final {
|
||||||
Output part2() override final { return Output(); }
|
//Find the first unique packet of length 4
|
||||||
|
return readPackets(4);
|
||||||
|
}
|
||||||
|
Output part2() override final {
|
||||||
|
//Find the first unique message of length 14
|
||||||
|
return readPackets(14);
|
||||||
|
}
|
||||||
|
|
||||||
|
int readPackets(int chunkLength) {
|
||||||
|
this->input.clear();
|
||||||
|
this->input.seekg(0, std::ios::beg);
|
||||||
|
int total{ 0 };
|
||||||
|
std::string line{ "" };
|
||||||
|
|
||||||
|
while (std::getline(this->input, line))
|
||||||
|
{
|
||||||
|
total += countUniqueSequence(line, chunkLength);
|
||||||
|
}
|
||||||
|
return total;
|
||||||
|
}
|
||||||
|
|
||||||
|
int countUniqueSequence(const std::string& input, int chunk) const {
|
||||||
|
for (int i = (chunk-1); i < input.size(); i++)
|
||||||
|
{
|
||||||
|
std::map<char, int> map;
|
||||||
|
bool flag{ false };
|
||||||
|
|
||||||
|
for (int j = (chunk-1); j >= 0; j--)
|
||||||
|
{//Look through chunk of 4 characters
|
||||||
|
if (map.count(input[i-j]) > 0)
|
||||||
|
{//If it has already appeared
|
||||||
|
flag = true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
//Add it to the map
|
||||||
|
map[input[i-j]]++;
|
||||||
|
}
|
||||||
|
//If the chunk is unique
|
||||||
|
if (flag == false)
|
||||||
|
return i+1;
|
||||||
|
flag = false;
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
};
|
};
|
@ -1,11 +1,69 @@
|
|||||||
#include "../aoc2022.h"
|
#include "../aoc2022.h"
|
||||||
|
|
||||||
|
enum ECommand {
|
||||||
|
eCD,
|
||||||
|
eLS,
|
||||||
|
};
|
||||||
|
struct SFileStructure {
|
||||||
|
std::string name;
|
||||||
|
SFileStructure* parent;
|
||||||
|
std::vector<SFileStructure*> children;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct SDirectory : public SFileStructure{};
|
||||||
|
struct SFile : public SFileStructure {
|
||||||
|
int fileSize;
|
||||||
|
};
|
||||||
|
|
||||||
template <typename Output>
|
template <typename Output>
|
||||||
struct SDay07 : public SDay<Output> {
|
struct SDay07 : public SDay<Output> {
|
||||||
//Class constructor
|
//Class constructor
|
||||||
using SDay<Output>::SDay;
|
using SDay<Output>::SDay;
|
||||||
|
|
||||||
|
SFileStructure* root = new SFileStructure{"/", nullptr, std::vector<SFileStructure*>};
|
||||||
|
|
||||||
//Solutions to both days
|
//Solutions to both days
|
||||||
Output part1() override final { return Output(); }
|
Output part1() override final { return Output(); }
|
||||||
Output part2() override final { return Output(); }
|
Output part2() override final { return Output(); }
|
||||||
|
|
||||||
|
void parseInput() {
|
||||||
|
std::stringstream stream;
|
||||||
|
std::string line{ "" };
|
||||||
|
std::string instruction{ "" };
|
||||||
|
SFileStructure** current = root;
|
||||||
|
|
||||||
|
while (std::getline(this->input, line)) {
|
||||||
|
stream.clear();
|
||||||
|
stream.str(line);
|
||||||
|
stream >> instruction;
|
||||||
|
|
||||||
|
//Process a command
|
||||||
|
if (instruction == "$")
|
||||||
|
processCommand(stream, ¤t);
|
||||||
|
//Fill a directory
|
||||||
|
processDirectory();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
SFileStructure** processCommand(std::stringstream& command, SFileStructure* directory) const {
|
||||||
|
std::string opcode, operand;
|
||||||
|
command >> opcode;
|
||||||
|
command >> operand;
|
||||||
|
|
||||||
|
if (opcode == "cd")
|
||||||
|
cd(directory, operand);
|
||||||
|
|
||||||
|
return &directory;
|
||||||
|
}
|
||||||
|
|
||||||
|
SFileStructure** processDirectory(std::stringstream& directoryElement, SFileStructure* directory) const {
|
||||||
|
std::string fileSize;
|
||||||
|
directory->children.push_back(new SFile{ newDirectory, directory, std::vector<SFileStructure*> });
|
||||||
|
directory = directory->children.back();
|
||||||
|
}
|
||||||
|
|
||||||
|
void cd(SFileStructure* directory, const std::string& newDirectory) const {
|
||||||
|
directory->children.push_back(new SDirectory{ newDirectory, directory, std::vector<SFileStructure*> });
|
||||||
|
directory = directory->children.back();
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
56
src/main.cpp
56
src/main.cpp
@ -1,33 +1,32 @@
|
|||||||
#include "days/days.h"
|
#include "days/days.h"
|
||||||
|
|
||||||
template <typename Output>
|
|
||||||
void runSolutions() {
|
void runSolutions() {
|
||||||
//Heap allocate all solutions
|
//Heap allocate all solutions
|
||||||
std::vector<SDay<Output>*> solutions = {
|
std::vector<SDay<int>*> solutions = {
|
||||||
new SDay01<Output>("day01"),
|
new SDay01<int>("day01"),
|
||||||
new SDay02<Output>("day02"),
|
new SDay02<int>("day02"),
|
||||||
new SDay03<Output>("day03"),
|
new SDay03<int>("day03"),
|
||||||
new SDay04<Output>("day04"),
|
new SDay04<int>("day04"),
|
||||||
new SDay05<Output>("day05"),
|
new SDay05<int>("day05"),
|
||||||
new SDay06<Output>("day06"),
|
new SDay06<int>("day06"),
|
||||||
new SDay07<Output>("day07"),
|
new SDay07<int>("day07"),
|
||||||
new SDay08<Output>("day08"),
|
new SDay08<int>("day08"),
|
||||||
new SDay09<Output>("day09"),
|
new SDay09<int>("day09"),
|
||||||
new SDay11<Output>("day11"),
|
new SDay11<int>("day11"),
|
||||||
new SDay12<Output>("day12"),
|
new SDay12<int>("day12"),
|
||||||
new SDay13<Output>("day13"),
|
new SDay13<int>("day13"),
|
||||||
new SDay14<Output>("day14"),
|
new SDay14<int>("day14"),
|
||||||
new SDay15<Output>("day15"),
|
new SDay15<int>("day15"),
|
||||||
new SDay16<Output>("day16"),
|
new SDay16<int>("day16"),
|
||||||
new SDay17<Output>("day17"),
|
new SDay17<int>("day17"),
|
||||||
new SDay18<Output>("day18"),
|
new SDay18<int>("day18"),
|
||||||
new SDay19<Output>("day19"),
|
new SDay19<int>("day19"),
|
||||||
new SDay20<Output>("day20"),
|
new SDay20<int>("day20"),
|
||||||
new SDay21<Output>("day21"),
|
new SDay21<int>("day21"),
|
||||||
new SDay22<Output>("day22"),
|
new SDay22<int>("day22"),
|
||||||
new SDay23<Output>("day23"),
|
new SDay23<int>("day23"),
|
||||||
new SDay24<Output>("day24"),
|
new SDay24<int>("day24"),
|
||||||
new SDay25<Output>("day25")
|
new SDay25<int>("day25")
|
||||||
};
|
};
|
||||||
|
|
||||||
for (auto& solution : solutions)
|
for (auto& solution : solutions)
|
||||||
@ -51,9 +50,12 @@ void runSolutions() {
|
|||||||
//Free memory for heap allocated solution
|
//Free memory for heap allocated solution
|
||||||
delete solution;
|
delete solution;
|
||||||
|
|
||||||
|
//Hold the console
|
||||||
|
std::cin;
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
int main() {
|
int main() {
|
||||||
runSolutions<int>();
|
runSolutions();
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user