Introduction
Introduction Statistics Contact Development Disclaimer Help
tadd day 3 part 1 - aoc22 - advent of code 2022 solutions
git clone git://src.adamsgaard.dk/aoc22
Log
Files
Refs
README
---
commit d542900c3f9dd47037e95ba4525cd280933dccec
parent 6759117bc4ae6e546eda4f5cca25727cbf23e411
Author: Anders Damsgaard <[email protected]>
Date: Sat, 3 Dec 2022 10:29:19 +0000
add day 3 part 1
Diffstat:
A 3/aoc3 | 19 +++++++++++++++++++
A 3/input | 300 +++++++++++++++++++++++++++++…
A 3/mkfile | 9 +++++++++
A 3/testinput | 6 ++++++
4 files changed, 334 insertions(+), 0 deletions(-)
---
diff --git a/3/aoc3 b/3/aoc3
t@@ -0,0 +1,19 @@
+#!/bin/awk -f
+function val(c) {
+ if (n=index(items, c))
+ sub(c, "_", items)
+ return n
+}
+{
+ items = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
+ n = length($0)
+ s1 = substr($0, 1, n/2)
+ s2 = substr($0, n/2+1, n)
+ n1 = length(s1)
+ for (i=1; i<=n1; i++) {
+ c = substr(s1, i, 1)
+ if (index(s2, c))
+ sum += val(c)
+ }
+}
+END{ print sum }
diff --git a/3/input b/3/input
t@@ -0,0 +1,300 @@
+fzmmmfwDWFzlQQqjCQjDGnqq
+tJHJvLJVVttNsvTtTvgHHSVwCsQRQQZCZZMqQMQBnqBMQs
+LgThNJhNSgTJVgvgtghPhbpfWzfbwfPmpprb
+lDLnSnLZRjmWrlhrFF
+PffQJNqJbPZbpmjrrCVNFmCh
+qzbcbqfMfZMTfQTqqzzTPPLMHgBBBtHRStvgHRDBnSRL
+WPZfJlZZCMwwZPWCwWzVHQhsshVSsfNQHdvQNN
+FLGDGGnGdVjQQQDQ
+ccFFbggLnRcLFRtFBmnJzdZZzZBMpwJlZMppMp
+RZsnCZssCnDccJCnfcQfHTdzMzhdLdMTqdRqpRLwqq
+tNrGNrrvGhTThQqw
+rrFStPgrFWWgvmPgQjtmNtmJcfJcsJsZblDZfbfHDFHnfl
+RdTfgbbPbJWDDqRvsDsmVG
+NSQZLQZHpFGLqnLszrJm
+ZMSNMHhNZMMSQwhQJWPBJCbhbcgtgfcJ
+qZfqPvLnnZGpGpCJlvsMsMlHJJHB
+mTWFFFTTtVSJMzzjWgSH
+RbVdtdFtcrmbRQDDVHDQTbDNwLPLfnqZnhZhQnNwfNqnnn
+nhHfSGHGThhZjnhrrSnsSczdzlfzzdQQVzRNFNcFdl
+JJvCDvmCbtvpvbMmDvLbCJpmqdVVVcMcNGzRcNFcRRzRclQd
+vwDCwtLmwLBDJmCHHjHHWGZHBnsnnj
+QWTMqZhThbTbLwtGBrQfQQNr
+jdzSSccVPPcgcLrDBtDVwCfNNC
+vcBgcmssccplTnnTqsMhWW
+FlcwZhBhGZhFJnGtZZFwlGsWRLHdWqMzPjWRLTLJHHjdWq
+vfmrmbpfpMfzjHjfdM
+VCSmVpmrNDMZhSMcsFnh
+nHqQVtVZGGwwwnSF
+fMBBBWCsCfMMbWfbsGmGzFjQGQFCPhFQhF
+fbcsWpJRsWlcNVLtqtLLQcZQ
+rgNJdfNJpgpJVMMVfmfVJgCtCTqqqzwTqrBsTswcCCss
+lFLHGWLvHQFhnQFhbFnbHWWPBtwqzBPTcsPTswZCPBGCTC
+QQtbRtLhtjgdfMRMDV
+jTRhJpGhQPfPLsDhWh
+wVVMbqbHwVwwMplHWfsfNmWcSLqcLmSs
+lVCZlHnwHdRpRGvZTBGJ
+csppppDDbGLbSqndFHHNdHsH
+lVTlgWgjzCzfgvfggZWWlnHPPBHrSCqBmrSBrHHBnF
+QFgvFfjTvZjzlvVTWljvTtMbLcccbRRMbwLMMLQLbw
+tjhLjLJzpJpwjsqqfQqNrNfRnsRR
+WvwGBPwWZZrnbBNrNnnC
+PDvGVTgvTMGvZTGTPvWDZVJjljtLzhtmLlJjwJVJLm
+WbzpSNswNWszwSLgSNMcrrBfPJJcfsHMrvMv
+CFllhlGFDVFRCmhQDlDTBBcvgBCTcHPHrfrHTJ
+qGRgVFhDDZmDnDqhgQFGqzwtzSjddwZbzwpLNzjpdS
+FlpZrQSJJmQpSpqlQgbbRZCgGCZdDdbNdd
+WswHfjfnhWPFDsFRDcbBbR
+WjHvjjWTfTvHFjzvPnPtttVTTJVLtJSpmtlltp
+tnjrnnnnhNlPBtbbcWpZScpjbZSz
+wmsFqfqqqGHTLbzpLLbgzMcH
+FGJqsmQGRVFwwQJschPdhPrBndBhtPhrQQ
+dRdJRfTnCRNlJjPBDmBJsbBDzm
+wSFWSgGVSLwpFhpLhQjzgPzbtDPDbPBsztrP
+WMGvVMLLBCclNHHRlM
+gfSffQBDBtZvwwpWDHcbwb
+JnCmmJCRmztsVPJRFjFchcGGWFWcGcHFvGLvHF
+VCPzJnsPVCjtPjdMsMdmVmMBfgTZBTMfSfZSSlfNNgSSfg
+lwHJSVZHWWVwJQwbbVVtwWVVdpdPfRfgDLPZLTZLDLgRDTZL
+hhBrBqRcnhsFFfddmdmmCmmppn
+MNNBBRRshNHbtVMzQJMM
+NBsSNtLNTtNsvlTBBRLgFSCbFmbHFCFhgcghSm
+WJWWDdVzDZJjDJQcCDHmmhCnmHmHFm
+zQVdQZQwqVQHjqzWWWdHpzMwGMBlGLLtTvRvRNsMwwNN
+ZCztttSjGSqRZgRPDNQQNr
+hLvmHshLmLcFwwhhwLqMVRRRJQQVNnRJMVRDNNRr
+HFhTpFqqLcssmqmFftblBSjCjStjbGWBfj
+crffjHDfrQfnfpLPgbgP
+TmFvFCmFTFFCtNsmMsRvlRTpPbLGMnGSngPppShGpbdgGJ
+vmslmwTNmtstzFsCvRFrHBrDZzcQnWqcDDHqQB
+LQLPVLGdGrRPRhHgwMhllhhs
+ZbSZTNqSZfNqNCtSSmTttbpSWMlzWlslpWHsWgJWhwJzBMlz
+bqjqqFFjHqTTTZTmSNbfmdrFQnDdcvVDGQDvvVnQnr
+mQdcdsSThlccSWhMgDnQnFtjQPtnjPNvtR
+zzsGwzrrHGBfZJGrJpDtNHFjvNvDvVRvNRtV
+wZBCGrbrszTbThcTcLcb
+gJDDDDcPQgQfNFPhhZGDDcZZSLVtlCqzsMlzqpszlsVtFSql
+bBrdwHTrHWTrTtzLlSMCCCprCq
+dnBwRvmnbmBvTpbnbWbTjZPQJhhchmJcmcQPfmGNcJ
+sjMGBLWGZjsLjJTBCCbvNrBCHC
+mpcRfDSSdqDdlRqdwRvFrHFbrHJFJVvDVrTb
+qvlgqwpcSQSfLjjhzgnMzsnP
+VgmLHHNRNVLNhsNgRHLltjjbCWnCWZbldntW
+GGMFPJqPwJGTvvCCdqdqlqCj
+rGwGrMQzJQBjJwTVHgDQDHcsfhVhVg
+pblwGBlFlWwwlgCSFwbLvQZFvzvZhzvmQTLLzJ
+HfqccHzVDNqLmmPmPPQZ
+MNtrVdDjHtrzGBdbGWCblw
+NNhnnLdnnfhdhVjvThvqVvCj
+tHtHBzBGWHBWGtPBSvvpGZVbSsTFjSqqVbscgjCjqqSC
+HBtzJHzzpDZpzMWpGPtWHvZwQmNLlmQnmNdfMmNRmwmlwd
+QzGqGwmbfTdPBgRRcgmMPC
+NtNZhljrNjrSrtltWlCJCJJfcVVRcJcRgPjf
+NlWSZZWsHhWWlprSSvZWHrWfQLLQbLGfQpQzzTFQbwzQdd
+gcwcSnccnwLRRSzcBQRvZZdvtNtvRbQJQv
+CqrCrrPsVstvbfDfbb
+TPlPVhWFFMGMnMjbcT
+gjjHGvcHgsgbSRQbRFWbjC
+ttnBTNSSfwBLzplWPPdlLlMPlMCQ
+TBZpDtmnnZNvhJDHggqqgS
+zfqzzGwMbllcJFqm
+NpHgpRZrRpSrSZLghlTjchNlNbhFmchb
+RHLWHgLBggZpHpgHRZrLgZLQCMzCfDWGMCzMQQGvPmvvfC
+bBWWlFFBBFdVMLfvsfjrtBvTrr
+qZsgNZzcwfjZrfPf
+gcnNNcDncsDGzggDnNRJnzHhmlMVSSbhVVVmMbbhVmMlGl
+dNNRQszqRhPNfddWltvDltMMNlnncv
+ZjZbpgpSpjpJgpCCpbFlTnSDTlzclDnMvnnMlT
+GCJpjbgzJCpwZwrHZrgHsRBwBVRRsqdqPhLBQqsP
+mnnVCcwGwnsVJntmfnBtBhTDzpzzpDWbDbsLLzpWDz
+FcHQdZSRHbhZZWWhrW
+dNljMlPPHdMPvRlHMRdjRRNBnwJfCVqwqqffCfCwtcBV
+ZGtGzBBGjvdZvLWLcrPVcZcsNVNmVpcH
+MnlgngCJMgJbhfDbCDPrHHVcNNrVpbVpVmmcVq
+lSPhlClftSSBvdGS
+jFhGqVCcPMMdGFqczBltzrtglrsrjBgB
+wWgwvfDZvnpmnHwHTfNpDbtRWbzltRlSrRlbBSbbzt
+fHJvJvvTwwJPhCccgQCM
+BrrrBVgNppDVBbTgDvqWdWZqWqwNmNNHvH
+sHsHnHlcJjFwMMFFvGdPvv
+HllCQCJQJsnjgtVTbBgpQrSr
+JgLPLwbhBrCbLBCJPFFlPFZRTNTZFRqlRq
+pmffSWvDcfSfGmvsNHZsTRsWllssbT
+vDddMmScdStfzGcpzzwhJwJwnCbLwwLLCwht
+sWSSvmsZsdZPWdLPRRsmSrrnlnvJjfnggfrgtfjnjr
+VWWWBhhHBBHtljMMfJHrrt
+WWqpWVqQqLNGRNZP
+QHjjGVBQpffpjqppQsSsQHWJcVVgJFWcFTWgNLggFPNc
+bzzmbzzZnZztFTNJWRqmqcgJ
+zDZlqMtbwhCBBfppvHDGvf
+BNTdfWJmzHNHHzzTdLCfCfCswQjRjljVsh
+FbGnrFnrPGSSvGPFZFFPGClLQpjQRwLjLplQhRlsrQ
+GbnvvgvPFwbwcnZMMGSFvFHdNHmTBNJNmmmDTJDBmWcT
+rBhRPrjJrRtTHtWHWcjc
+SDdGqmhdFSqblLGlHHfHWl
+DSSmFqhsFqFdzqFgwsVnvBQPPQPQVrnRsJMR
+NZcgQdmSwZgdPFPVNFPqqVVF
+hlhhjMhGjLhLDGDhCBJDCrRFRrqqpLPfpfPRVPprPm
+MlhjlMDDJTCmZddQQSTcTT
+zRddrwzwNhrzrtCLtLfsLrqflC
+MbSDZvVwGZpJwvHvBVfsqtjqlsPPfsqsfclb
+vJpvJvZTVgTdTgwdTn
+SZMsTTScDMqwtDDJ
+VWrbzFvnrvFQQtnhzdPFmfwGfqmGPfDwmfPJ
+rrLbrnVrLvVQpLHSHjsTBBjZBt
+bSrpbWpPpfzPRWrWvhJgddrcccgFnFss
+ljGNTCtMNLGQjNMjQMGtZJDDggcldcFcvhdFddnhhF
+vNCmQMjmvGzpRPPzzmfw
+BrbdcqcdSZRLQltNDqFpCpHH
+jnTzWsWjWjwTQnzMvFlCzNDhNhDCFGpHpH
+wmmvjVQMvwmsQMMwnsTPgVfgJcLcgfSbbBdBbJSdbSBS
+bJFbMdcmgFSFgmggJFcGwjRdzPWZWGDDGGRwGD
+hrttffCVVCTVlrttQwzRzwWTqRGDGwjTvG
+rfLChHhlpHrfHlnWlpWCpQVcMSmMmSJMmggbmMSMLFNSSs
+JRMBJfMJQJTcNNdD
+LHsLmspghmmpdwwwcwRCpPTT
+ttLLlRSlqjrMqFtZ
+VjtHVHtvVqttCdnGpHtplcshglNgprrlMhrcNghw
+WTWRvRWFZQLWDvDWzwscNfcflcshlshFlw
+WQmBQWPTVGnJPnvn
+cpRwjcQwVfQzQPQl
+BZgGDBZBsgWBDDJzlhfhJVmzVfmThm
+FqWDDGrGDFNqFrDZFnplNHnSwtnSRwRplN
+VMLVRhRLRfhfgGdfVdZWRdTHNqHCDTrSJNBBBgJNQgND
+swlcpsFPcPwzpSlTTDrNrQPQqQBBrH
+zsppFscsscmbzsFsbsZbMfRZdVdVMbVSWhLG
+NjcjHFjrHHFpjGtVtGWVZW
+fwPlsJqdndPnwJfQdfllwNtWGdtWMMbtbmbGWbMWGN
+CPlwnCwnwqClTJThTDzzFcHNSShrRh
+llqlsNsPNTpDNTDNNf
+cnvcWFjSrMSFnvWHTzTggHCcllzLpg
+wjJSSrFrrMMJGrFFFGjGvJnFswsRwRdmBdZbbqqsPtQqPZls
+jlclpqjcRqpjzjnVPgTmBmjCrC
+vGvsFNGGMZNvdGshQNJvJgbVMrnbrHVBgBTTbBBPBT
+SvJNGhvvvFdfQvFshSpqPqLzRRPctRcLWwlf
+LWSSqLVBbNqqLrWHLSHzWbbqQfFgZtmtJCQZzgtCFCQCCnJQ
+PlldGDGdjGsMPhssjPmQZFJQQZQghChZQJgv
+jwMcMpsPRRdsRjPwNpTWBLSBqVqTNJWT
+hWnMWgTffWFbMLfHnFMNfHgjtBSNRzjBBSzSBBcStdzBtz
+VGrVCGcVJswvPqJQjtQppBzpSwdjpt
+ZqqsCrmmsfmWcHhngg
+vnNnssMcZnlnlMFMsnFcZMGqJCbLbNLNqgLbgLNTCpLgwC
+hmjzBzHmRSfBfmqgQwpQQJbQJmwT
+WVVtthRtRdsdqtddZd
+LhZBLfZpmcsFpFzm
+vTRRwTRRPnCTwlFgmsczzLmgLvFs
+HVVVNCPPHTTtClRVNSnwLTHSQHBMMHrHWBhrQbJhWMMbZbJZ
+WPTnnDPjvPlChhJPcgCC
+DRQdBqsDQHQLHsBSmVLBcbwgCClbgCGlJghgmhgw
+dHMHQDVVRBsMWTNfWfzWzf
+PlgFPFFJGgJhhMGZwGbpBtQjjjStBttptlSb
+TTcDzmHvdvnDDzdTVnTDmSspWspQLpWmSsmqppsWtb
+CHVdcHvdbrwJCMPRGJwP
+BtBfcPfBhBGDhwHMlCmrNSCM
+dQdzLFTQnRnQVvgLnNlrCCpFrJCNrHJrwm
+zRVLZQRRvQGbwtWfbGZb
+PPcWcwMmCwwgnphCCLpjHp
+TtZsJTzzJSSSZJsdJtTrpblhRlHHHMngpLnnjHps
+ZDrvdFZtJqtStrZfMcGDVwfwffmWmP
+wCwSzzsHChhMVMhCPsSVLFWcdcWGPccRdjFdJjDR
+wBTTlBfgTlfpQQltmfgGGctRdGJJJFDJDDWdDt
+TppwnmlnQQqnlpqlmmwqlpphHqrVrZZSzshzShqzsrZVqs
+CCqCTgmdMCCCMMsWgqqnTCmJDGJcGGJfrGNGrSrrQpwFFSwG
+vZbDZvhDbzHzwNzwNGFNpNGc
+ZjBRVHPRtRLjLMWsCDlmgMdBmW
+MMsstRChwbChqRBqDrJNpNDsHdlNlJdr
+vLmPLfGGGGcTmFfTSgvPCvpZQlHHZpdrFJplQdZHQdHH
+GgPLmvGVSPfmfcfgBtjwCRwwjBbtVWbh
+LPPgFPccLPRswfsHfJgDsH
+bpbpTnCCrnmCtjBnTfDshHDwQVTwsDhQ
+BbrjnjnWCbBWZbPWzLDzDWdNlMWS
+pnncvLbcppBHgBRpddGd
+MtJfjVMtMmFJDjWSjVWzGdGgNQRBzBGNBMCGNB
+ZdDdsJFdDmtJmLTbwcvcbcnwZv
+FGsfFdNdhfbDdbhbLMhbNNTPJVCCZTLJnCRVJLPCRTVR
+qHjsczptHpmgHZBBVVTrrPzrBP
+lmpSlcglQtqWtcWjpQQfWsGDMhGFwdbGGNWhDv
+hNNNjMFMwthjFfvZBjFFvNSdnzSGGdGmHzHgGWSfHWSR
+ppJpcCVslpQJpJJDWHCHmRHHWWGSDn
+QbsrJQTQJVJNMNnZTZNZvZ
+NmRNLtGNmfcRrtDtrJCnWHJD
+blSzzSBssgfslWCCCJWFWHrsZF
+zTzbPBhMlTVSzMlMldlgMvvvvMLGcQRmqLLfvRwQ
+nnZsfsPLLfZfHLWdsZWZHdmcSpTcGmNScJTRGsTJmNcF
+gqVqDMgBlDbwwCqVbQFpTNFcTRSJNSrqqTSm
+jlMVMjljQBjMwhLfWWzhhfhZtmLH
+bfHwMvzwFBNpRjfZ
+nddcVJpGVpGqPVBBFBmhBhmsNRJs
+DWcPgPcPgnqCPlWWVWGMwbzwvQSSLbvgLpHHMz
+NMVqtdPVHgVlrfVrpnjCwNjjpCpNNpCb
+zhSvfWWzRfRLfvSpQjwbmmmvQvwwCD
+LBRRTRcLJSgqqMJlVVft
+GpgNzzSMGpGTrgzgMzJTrPgzjRwBdBlBbLRBjdBwVbLRVbSR
+sQWCfQcflhtQQcWCmsmlsbLnRdwqqBmmbBVbLVLwnB
+fCtQWFWDZFCQhCctFDsftNpzPPzZJpgJJNTgNlPZgH
+DqLtMSDLLttjdDSRdjZtdpdqVWFslFWrqWPqhwhfFwwCFw
+CvTbNvvTJNGHnVJwPfwFFFwsrh
+cQBzGBHnTQGgcNtdMMBpDBtCdtLL
+QsNDfdDNQsSTtrQZQtJJZC
+lLvRWMVMLzWbRjvVgVVGvmTtCrZBrTFFbmJCmsBCrr
+lljvlgpMGgRpsjsRlGGsMdqDdpDqNqfhqqSdncpqdP
+sVSJVmmtmsCCwschrbNMbcBs
+ZgLLfqvzzqgfdqHQLnTLfQQFhFMrhbNGBwgGbMlNcFclwN
+LTzqZrHHQvjLHnHdQTdTQvZQJjCpCJDPmCRRtCpStRRmVtmm
+ccQVcVHwnnDqNqSWNnVvqwcgJblgRslgmdGlssmGbQdddb
+rpFtPrzrMFZvZTLPpglhdssFshssJhsggG
+pTtLtBMjZLfHvNWqcBHf
+PZnSjnnsVfjfLLff
+crvccpglrtHfNbzbHLzmGN
+lptTLFFpdgvttFWltTclplDvhJMSMPhJPhChShPBZBMJhPMT
+mPSPdnhznPdhSmPGchJdFDtBhghgFgWpFBQhTBMg
+rHNNvbqHHHwZwMGMWtgtQMZQFQ
+wRqqRffvvNHwrHqrNqLvCrqvmPnzdsGJsSsSdSsLPVVPnjsn
+CzlngWpClJlzRJpDnpmzCndrhBcrhwcsBcLsNcsmLdQQ
+qqSjqFGTFbPFSPTVjcBcBsDdQrwBVLrNcc
+PtDDtZTvGDvFCMzZlRJCfWfJ
+vtQDpvpvVvvcSFrrljZZsVjFrV
+RqcTTRddRrlsjZrwrT
+zmbdRdMmMgbPDcGhGmnDpcQn
+gZqJRZRZdltFVGZQDZwV
+MCMSRHCMRHBBVtVCGwDCFGtD
+jcHsTMBNSSrBMjmMrcTMpRqpJggllnprqzRPzdlP
+mWSWHdmHWZWjBnGs
+TvchwtTfcTvhzwVGNtdrbjnnBnsnNr
+JTdwghvMzwfdcMVJqPmQFRPpCDJRJFFC
+DsHDCrszvvhHsshvsrrsgwdPpdLFgWLpbRpWFfMjWjWF
+BVJPJmPmGZVnfbVfMWpdLMWb
+cNGtnttqmJHNvNzDPPHN
+gpjmMQMrfmMntCSCNmSNCm
+vDRqphDhzHSdtqdCNH
+LFLLcbJRJLppFQlpMFfF
+SnSdvchzZZczndNvwcwnQrGfqrTTfhhTDgRGGLQQ
+lVWHWMmWmttsFBMLLqLTRRRqqDBGTf
+bsFPbFFssmFjWRmjVFjHbczvpZCwvwZccndpvzpzCP
+jzngbHrlHQllcbcTCtHGWtftGCHqWC
+JJgmsJRwFqChLGtqGs
+SmJmSmDdSPRwSMppJdPPwVvvzNQvjrNMNjMZZrQgZNgQ
+PvPlPcZPZFllzNzCDdhhdHjrpHNjHBHB
+VmgWtJWrqbQmqGDBdGQjjhBGdG
+tmbgggbgnMWnStttgnfnTzrCfPvFnccnPclT
+RQQbdSRdpprQSNVqqqfrffjvnjnJnhnVvHhBhVjJtjJz
+WGgGgLmLgGZMPDBhDJDHjMBFnD
+WPPwPGwlLgZwmWlslCLRNbrsTrfRrNNQqsspBT
+dNNpHpchLppdccTNtZZTRRPSSnwPPSbSnhhrhnSJ
+qfqsFsqffgQMznJrPznbMrrB
+vglfqQCgDgFjglCDCjLZpTHNPHttdcZVVN
+FWtDHDStZwrFCDwrgWPFDsWQJZzlMdpZzlNpNjdjjQzNzj
+BqnVGVcbTmGfHLGVzvpQpvJvQlflMdJp
+ThRRchnHqLTGbFCCCrrSSFhFCs
+wJrwdZPnJwqPbJPCnjFZdvHtMvsLsTsDtHsHDDqvpH
+RWzNRWjRfgjNMMLvcMcLNt
+WGGRQzzRmRmVQSgwrwJjjCbJhnbShJ
+cjngcvcwbMwWnbMWjbgvnsjPftsqfthqsBtsJJJJBt
+HrGFmDDzpmLTHpDsPfsBNBPfzZNPqN
+DDVmDplDrpGSVSTTHGlpLnPwCRnWcvWCdPbbMvcVdW
+BVRlBfPBffWswVWQsfwBNNPMFMmmGFZGnWZGtztrzMZMnz
+HqSJchHTHbTgHhGhvmRzFmnFtzRF
+RJqHTpgDLJDSqLJJPNVjsfPwBVsVLlfN
+NDrBlSmrFBlbbJllmtHHwhNNhZztqHVRzQ
+CMTCGLcvvtfCdCcCvCnMTMcTzjHwVZVRLjRRjQjRHRwzwjVH
+dfGdgGMGPggnvfvgbtDtlSJPDSFJPslJ
diff --git a/3/mkfile b/3/mkfile
t@@ -0,0 +1,8 @@
+run:V:
+ ./aoc3 <input
+
+test:V:
+ # 16 (p), 38 (L), 42 (P), 22 (v), 20 (t), and 19 (s)
+ # correct sum is 157
+ ./aoc3 <testinput
+
+\ No newline at end of file
diff --git a/3/testinput b/3/testinput
t@@ -0,0 +1,6 @@
+vJrwpWtwJgWrhcsFMMfFFhFp
+jqHRNqRjqzjGDLGLrsFMfFZSrLrFZsSL
+PmmdzqPrVvPwwTWBwg
+wMqvLMZHhHMvwLHjbvcjnnSBnvTQFn
+ttgJtRGJQctTZtZT
+CrZsJsPPZsGzwwsLwLmpwMDw
You are viewing proxied material from mx1.adamsgaard.dk. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.