From 7204c8d4f0524b9fe89681532aff1cc006db9c64 Mon Sep 17 00:00:00 2001 From: Jovan Djokic-Sumarac Date: Wed, 31 Jul 2024 12:26:10 +0200 Subject: [PATCH] intial --- README.md | 0 day-1/data.in | 1000 ++++++++++++++++++++++++++++++++++++++++++++++++ day-1/main.rkt | 45 +++ 3 files changed, 1045 insertions(+) create mode 100644 README.md create mode 100644 day-1/data.in create mode 100644 day-1/main.rkt diff --git a/README.md b/README.md new file mode 100644 index 0000000..e69de29 diff --git a/day-1/data.in b/day-1/data.in new file mode 100644 index 0000000..5af9fcb --- /dev/null +++ b/day-1/data.in @@ -0,0 +1,1000 @@ +gtlbhbjgkrb5sixfivefivetwosix +ninesixrgxccvrqscbskgzxh6cpvpxsqnb6 +dxxzrlzkksfsffp4 +sbzvmddhnjtwollnjv33d2lbcscstqt +88xpnfpb +ninevct4cpdvqfxmspbz9xrvxfvbpzthreesfnncrqn +mqsxzsglbtmsbltrbzkbrt23 +seven16ninefc +8jdddctvxs3 +fivennhhdfpmrnpjhdm2sixkrsgdt +2bgkccmp2khbhmptwogsz +rrddms473xcjrtsdnhp4 +two7eighteight29 +onek3three8lpfcfivenxpkhbvdm +spcdsstlkr7fone1 +9ninejcngjshghz +six78fivethreesix7fivetwo +nine17bsrfbzpcr +1qcdtzzfdpbcshjsjdmgsix +fourtwosix3one +26rqmtqznds +fivefour4kmgtsplpvvvhspsjrsxqjmzmb +fourone1pfjsxxprgxszsmg64nine +78four +sixvrxzf8mthh +three819 +eightnqzrshnbf7gxpndlncztwonztq +szsvltgsc1onecccbfour3oneightfh +vjdbqpninepqhlbcj61sixnine +2dbpnlhxtdninesix896sevenj +6fiventhree6 +four7xfour +jlnine6cqtdltpxt4 +sevencplmbvshm5flzlqxlbjjcrfxv18fivebpscblpj +fourfourfjft3three5 +3tgsppcfpk +seven48xcgqcfhnvc +twofive619hdbghs +4xppxkgpng4mttgskp8gxnzsfivethree +zbmzpstjf6znpflg +onefour9sixseven6 +327vjsevensfcgdbdeight +hftcndxpnine7 +9onert32m5 +bfdkjxcp56 +v4vqpstmlhtt +pjb5fivemonepcfc +cjftpgfive61five +7ffjkxkbnqfninevhnnbp +xcqkcbfv9xffn2six59 +nine4ssixvlrzjsrqvkg5 +seveneight74ljmjfthree33 +hdgsbjdsixtwo7chczjk +kkrpsbqmkkpmq4two9 +sg1kllqqfpbrcvgf43 +5one5threethreefoursevenoneljddmkss +cjcvnxone47eight6five +ghqqmsxnconetrhqrq3sixsix +sixfourg3 +ndlnhscmrx53six58 +xmktfbmqdgndhcvbpb93trvgv +52 +7twobkgsntslhthreeqttvx1six1v +kfreightwoonebbhqnqdfdkvgbcx5 +ninesixnineqzgzgzhdjsix8 +four7eighttwo6 +2pnine7 +6seventhree +five4four6 +2twozbsqkgkmfive62 +one9bkbnnineninempsqszz +two9jzgzbtwonef +8txvhbm5qpcvgkdfvg1hzmvcprvs +threeeight52 +five3qbhtfpkcvn4nine4 +9vrqkdrkl12jdsfpsg69 +seven757two12bxv +njnrmxbpvfourskvbp2sixthreexqstpvxjss3four +ninejfvfsp6twoness +22rcfzrbpbgq5twoone3four +rktqjcbz53five9foureight +pcjbdlsix5threeonepdvsevenone +oneonenine2hxpmqckdrftktntwo +7four92 +qxgfxkxkkf6hqbnsg4sevenninebvpjdnnrone +ckpf2five7six +three27rgsthreeseven +19jztwo6vninevmds +eightcdtwo7 +1c8kdqkrgjfour33zp +jxsdh8eightwoffl +sljxsjgvqfive4drrdlbbcrsthreesevenqktkjkrfrzv +pfjd5sevenfiveseveneight +fivesgzvngjfvz9eight +three99jrscbrhkczxdbtqqrfdtxh +bzhbbpkpbrqvhjmgsqq72eightwod +seven88 +3msvninelbhvqhfj871 +33sevenfn +49nineseveneightfive +7ttsfxbkjqonenbkrsdthreeqbp +cqjxgppqn2746one +six1vthdh +nbchjfgzmplxlrrtprkvhxmqdp4rdckh +two5six4four +four7lvttsbdj5 +4six9tnnsj +four4seven4svfm6zg +7threefive +twoqbxzxglsevennxsqpkpneightlxzndhmfourthree6 +nine5ldqdknsjsncbjmkmlpx +jpngl7668 +sevensixffour6 +689oneeightthreekrkkgjtcvh +97szfivekptsgppfmbseven3seven +gchqxphzf7threebzglvjsxxteight +4onefour46kn9five +bqncvpx25sjlnhdlm39 +69mnbns +1ffhnnhs2mftxnfcdhtdntbxjmeight5 +7nhmmbnxglndmg9ninefivetbkjkv +six7feight +7eightfourgtcj +4seven7six8gdjpxl14pgfkfmms +8mvrzktbvhrblflvndvksjkthree8 +9hcj +eightfoursevenngssddrstz8nineseven +pdbffvgqsnmzgccnhmzpxcnctkqqpzx1 +onegsrzht7ghgmkbrdzvhd +gvkjggsrmzfive1 +2dvdxtgqpdvccfiveck2ninectrcnkdcm +onexjbpzznnv21sixsevenrnshz +5oneqqq372bhzbgpltwofive +1xzhlgkgnmmqbtlkflvlrhrhkpglgsix +sixsixnjjrncqqrpbkfour338mztvsxl +rvthjblx55kjqvnlhgkf7sevensixpbd +9vfqfdrkeighttqmclffive6 +four6fourhtspfivefourcmzhkfive +sn2one +9ninefour7 +xoneightnineoneltpvkzfvpqhxszqmv3hthtn +4fivegqdgkknineonelfg +rzxkqbpsp32ndhgqjjonelp +three6chvkhhzrjttconethree +xsmdhzsfgrmhseven6eightndcpgrrfjsix +pkdqlfive7oneonendgtdjtwo +8dpfqfour6onenqmfxhrmsx +four854hcdzjv +ninemg8xm5gftwovnn +5ptkfjdrkmdtvkgpnsixtwo2 +qmseven2 +27khblcrxdmzjxrqcsgrlninejbjg +4ftzjmgzgninenine +six78seven +3three7dndseven +qbtgsxbfour9sevenfour2ktlnsthhsznine +59eight +xdmbrqpgdqxrrtxcmrdstq2jrtfktzr4five +2kkpdpmrjh1xvmnkbkqgxthree +9threefour9drjzhjfdbnineeightwofc +eightknfgls6ztjtxmgvmeightfggfdcfjnf +7hkbnqkf23 +hjjmdpxztwoseven9three +qp6two2 +vxlkhqtwoggcgcvnhdrfds19 +four2sevenseventdpjtfnine +24nine79kvzjnnf +t23cbtmfour +fourkksztczpgthree2gr56 +57sixnineeightjdqvbtsrfj6 +sixsdlhnldk6seven5zncgtctrrhczbnrqs31 +8onefour +mtfzxxlpnqt3mnrsrfscgm +two2bdxjzbfxzblbzzdfive +five67tdmxgmfxbseven2twoeightgcrbz +zsstjzljxbzrgt5eightfcpkzsths8 +twosevenbgfxdvkloneqffplfive7 +rnkoneight1bvvhkd +sevenonebrnq4 +zrxlcfxkckk57nbvls7 +99cjnj3brlnvrfqjgtwo6 +6lx8srsflntthree +rzvgnfdzrt36f4nine6 +fourmtonehlngpjvfhjfzmbdznpp8 +7seven28xrmr +93sevennine43seven +mnnqqsixsvdpqk9fpzd +zdpvcmcjq23 +82five1jpbldxgglcsqseven9 +two7rx9seven3 +3tcnxsevenninefoureighttwo +83sevennnjjjzsdzlx5ninexns7 +1seven4 +kczs59ksfnjzthree +93zsjzjn6862pdgfxqmghcrg +threethreeqntmqqm1fqgrxdlzlrzp2 +xxroneightonefive6vjmqbr2fjdtxhjk +2vlxfvqtd +9vdhdvgllhvjthvvmg +khvlqone77seveneight +eightfourjkqfzblbr7dpkgdgm +zdddkdnineseven6vzmsqrninetwo +dcspvl6brpdhqrrxrds3sxgvdlxrfhvh36 +twosevenv7lxtmxlrsdzqvcrtkdrxs +mjjdznk4pgkrjppqr1f +jtwonenhv4rml36bdqgbbgvzqbksrlqnxone +twottz9eight +thtzc9fivetwoeight87blggcsbk +eight2seven +xlbbchh6 +332ponesjqxnnftj +821pgvbsbq9 +4seven1smptmjbfsztwo6eighttwotwonevcv +fourvkjmrhgxqnztkdgj2four +xtjrp7bsmdmlvpmjfive +1ninesmtxnv +tzkl385gjsixtwosix +6xckhjxhsgq3fourbxtfseven3 +rjcrvbsxlq84eightseven +hpvnq2 +twofivecxxzvpfrfourfour448 +82fournfour +2nchszknqrqtghsfivenine +ptssxccnvlzrtscnsl6fpqrjtrfffour1656 +29rlrctthree4vbdmmkpg +twofiveqvllxsfj1sevengnkxhthreehppbslzmcgpg +5ninefvvvmfourzndnmvgcll812 +zxqxqzc4twoeightjfrfdjnlntjbpsevenone +hrhvjbdrfourrjj45 +7sevendtgjkbmlgpmeightone1 +lxfmntfkzh5lxdhmpfrkxqckrbl +616fourkdsp +7dfllkzmcbplzqseven9five +25833eightfourseventwo +four9sixrgnscd6seveneight +two89pxddpnbtck993lfxrhpx +ckpgbsfpdffiveprvqmmczhsthreeeight9 +431knfdk +ones7 +two4fiveninesixeightonethreefour +twosixsix9tsdrcft7 +8twokstblnjfivetwothcbqh +9twothreedtcone1twoeightfk +slq9seven1mjcqsstkxnhkmzznine4fvphmqsgr +fjmmkb6four +38xzqvzm45ldkkgxzlmtwodkgmd +1eightfive5hbs9twonnxbtghrbcd +9sixlcttnctfng7vxnpmntnxh4 +2two2rzkns7two +eightdbqninekmvfcceight65 +554 +dzlc5 +8597six4 +v7 +83vrfdbksmthree3nmmrbdmpmsj1 +4fourmcbdnrmd1 +three8kphbvvndl +nineppfhcn32 +eight7fiveeightvp +nine2threebvbnp8 +435pjthreerdtf +9xvxxcrscx53rbblg5 +nine2fcmjdbsrrlrvqmxhndgvgmqnhvqjm +56z8one5sixfive +threesixtwonine5eightfive3 +1ppzmxrbrgvseven +2xqfoureightqflxrshthree4 +12five91fkeightrsxgfl +sevennfffgrc9four +51ninesix5ninenineone +fiveeightlxqzjxcthree48one +sxoneightkkckxpxmhklhdcqzh7fxhjrsix5 +1289xjht3seven5b +9qjjseven7ninemmsn58 +dcspkncsffourgghhgvgc234 +62rdlnmbfnsc8 +khpklssix6cklksvqgqmjccffkrbcjjszhbdlm +qlhfqbbdg8fninedtnvpxffbj7four5 +65sknldglkhseven5bpcvsc24 +three41sztsmds3qxrkxgbcsnjjpgmkttjzfts +2fivefivenv +mjzfiveqsdvrllthreembzcvrjgzqqsp8 +8rxtwoqsfdpksc +fivezxseventwo32nine +onesmfsthreezdcrsdzjf6twoksvpqtfrn5 +sixthreetwosnine6gbjfpone +8six39 +onetwoseven3bplhxvhkkzjgjdxjknjfktn7 +xhgkqbltlxdnq51three31one +threekbknvpssvgtvbsevenrlkczg4gtfqpvrsmj +mqzdlfour7lrc3one +2rnthreesixsevenqtgvplzjleight57 +ljvfrfqvlbnsm1fivebxnfgxptn6ffkhhrzmfz +8fourfoureightbjkcl +gsvshhxbqv1nhhsgjnkhjshqtwo +eighteighteight1 +cxfprkbjp1psdkneightwojlf +eight9dgchpkgxpkrgjrclqqrd91tlvhhspzlmcpgr +zcjshj1twofourgsgvpljsixpmlh6 +9cnrztv +qvrdxrjk5sevenbmmbrchzgthreebjhrtxgeight +qdfsdhthreevdx4qspvkbdtccpdljcsfq +onefourm9hbpvsxbqxonegtsvfltdsg +srssgmrhszjvkrszhktfsbmccz4tvsqxvcxpx6three +dxvgjmcxbmfive4zvtfour +vtfxpjqkfive6one +ctshxrjvbslhtninedfour2 +eighteighteightseventwo5zsninesix +one37qfhtfpvpmmvjnpfgbkkbhgbdhdnine +tbeightwo2qxvttmcqonesixeight +btdrgxpthreenine8gq +1vfqvmgqvpmjrtgfqngkm +one13two +8eight2eightfiveninexfsptn +qlddc8 +ninenine8 +vtwoneb2lfj +3sixeightseven +94ctfzmjhzlpkjnbrrtoneightsrm +6mqkpvlf +trspvjctskfsbj5 +9tlkmnndlnqpcspq4one +eight1three8sevenoneftrjjxhblv5eight +twothree4nrshvjkxvq1sevenseventwom +2two5sixthreedjgcfhvz4sixrm +ntwo5one7ninembfive +qgclmrksfqjcrh849 +3twoone628five +5dqzjdmcninejlhqone +99mpmtfjbxmrjsix27four +sixthreeonecxvzmrm55rkx +5threeeightseven +tq8twotfgsnjctnseven +2nine76fourtfmqjkrdtrp +2lrfive +1sxkrpzjseveneight +xtbtqzvkvfourvkjjtsevenfdmsf2 +9rlnrjhxstsixrrqcgmxr +vhzpsrzfive2nine76nineddkqzq +sloneight27ninebnfxmgfour +ninesprstwothree8threeklrfour +two7onegxqvmjvdgb1hxsjllprk +1six5foureighttwoeightthree2 +5three4hfive +nine1oneeightlhnine5three +hfz7lbtffkphnvp8 +sxp7 +kfclfdhtplbmpzsnplmqfgnc56pgprnlkp9 +threethreevfourfivehtxchgc1two +7five4five222 +7qqnfoneprdsgj +457 +fivesmgdghmfour48one +kkr7 +rpqdl8fzgdg9ljnbxzdxs +tvmtggfnkq8fxbmgntmtffive1gbreight +5fcncxjb719fivepbn +7msvcmpknn +f61 +ltzcqsf1ninebbbkzkcsix6plsp8 +16glvnbcseven8eightdp +bdvgvrmpbpztjtdsqxk391 +keight9qsqfhzgbh5zzqvtkr +eightone944bp187 +9three2 +klgsfsjgptcqz4dkd5five +ninesix6qbbqdnsmjd1five5fourxprrc +2onesevendkspzqmhjdkrvgnhqfkvh +eightvsgnsrbkk34four +czbkrztcpkctv9fhmjmm +dfourpjjbffbtj9eightsix4tzqnnnsqbzqp +sixdvmclzpfnthreefive9fourseven +sixninerknqqsdl3twotwo +fiveonefltlnpsdgmpmzqp633 +three617six +ddngjtdnine8tdxcs +onefiveqhzxr8pftvhbhphr +three469 +69mzmtjgfztwo1 +551zbxzjfglghcmfoneseventwo9 +4sfive55eightqnk +chgsglxjlmnineninesixhhqbppctqvmrslbj46dnzsmlg +zvgjxm1sixninebxzpbknmqh1skzqqblm +fourdrf28sevenfour7 +j4zgctfmgcf +4t3eight3vlvgzbjlrzbdxjkthree4 +threefournineklg4threefour5bkmxtfxtnm +5five9 +svqsrqlfjhthreegnkjb1bjvsstkdc +gcs2nine +gqnsnjvpnmsllxhxstonethree5eightone +6fnzprvv1threefive62brhhz +two89xdrzrfr96 +4ninetwotwo32zhsnzlx +ntwone4eightfourthreeeight +87rsrlb9threesixthreejjnhcnx +6onenine +twoeightfive13 +one5bqvctcbnrdktf7qszxrxvgtfc +two9jtwo +dnsrkkdjbscltfsnonethreefive1 +three5one +37dhone6one +eighttwo2five2643 +7nknhfeightfour +nineninenine2pztjcjtsmn3one +7fxvql +gdgzvxnlkbtgkssdjrxftwo2 +fourtwo9 +onefoursixzeightone262 +kjbhkp3vjvdqchhmqpnbzjxvfrgpnqzpbn6eight +52tpgzzbb85 +seven4tmzv9 +1jncptklvtwo24four38five +nv447oneeightznqddpvvztwo3 +five7971bcqk +jdmxv6hhgstzcnvscphjbgrj1sixsxp1 +fhrcrqzqglr7 +15fourgvzbczonexlqzkdx4djvckdcfour +gbtgdlzsdvseven5five16 +tzklvspsz33vpjd3 +9snmndhqmtoneprpzfnsjq +85bvtnqqhqnbkmxkqqxzxlxqbnkh +8threecfnmsffphrninehjbxlc3 +n19five9z +gqrqz1 +mtmhphhspflprqgzlzgthreeggrtppdgflrrjdseven6 +pbdfzdqbx27oneeightseven +rtgnhlgqpkfour3cmbmhtsr +26fsdgjdbsevennine9l +eightxxnvlvdsdttwo9 +kthree3 +1nckxqpkthree91 +7bxdbjtqphs9five2nxrddxstwo +seven67rrvfztx +xkqk4ninesxfive4three6rnx +mnnspxdqjf3 +zpvzzptfsevensevenseven48 +threeonetwo1dqcgzkmdqkcdzpmqhzmm +sr19 +eight9nine9four +cpfrzhrnfivevqdr8nine +4zkhhfv9 +fjzmqgr3869 +mnxtwone1982sixfournxvmnvzmxlqm4 +6rg164three +zoneightnbbnrxclsthjboneninevkjnzhqrkvmtt6 +eight7nnpn52 +nine8threejrxc4seven +4fivetcq58 +skqfhjbtqthree7 +3mhlr +three6tzhlhgnx5ljb32nine +t31kxcf +41gdkmnf2two +ffsqhzmznsixtwokxjtwoeight73 +trtcc477 +seven1261 +4eight8rhrvlzpmnqseven9twohpn +dzfffzff5fiveplhmbfnzrvphfoursix2four +onedmhzhhzrmtwofourfive7 +zqmqlcrgzb2ninesevenrrdlhznhcqxsmfltworqlvzkdhqhskshjsh +37brxzssqonefive67 +xkptstf98fivebdlrslpjfxtvzfour +oneqpsfnprzd5nine +6gxxvxb7 +39two +nggltz4sgkdnpbvzz2nineblfff1fivesix +vvxrpdvbzppfour6gz3six +dfrdtwo3284fpntbqx9 +1zgxhdt94vmxmfiveoneqvfjjq +3lrsjmr44snx +eightonerjhrdftxrvqkzfive4zvtqnddtwo +bxfive2eight +jjnine662nine1 +onesixone1kknsjgzlbbrgxdbrxlpjvhtnkjbb +fivefive2three5 +sixsevend5 +6ninelfhjjfourfour24sevenxg +dpdvmrs7rbstcg +phxszdrzdfivepfkzcmhnineeight97fivecnkcxjqrf +7dpdbzbfxztqlrsixlzgcbctp7six +eight3one9 +nineeightjpxtpltworthree2xcrk +xtgfive49 +dndltvlglgtwo2seven +6lfxsgqzqj +7bqsvgzkphcmcdcpfg242lsnine +895bcx +fourzlxshjgtplrzk24xfspckjdone +stwonefivethreefivefdgnr6five +2bcsft42three7jnndsjqckmseven +oneqkmbqdfgljtgx3 +bpfk4rdxqptq +fourfivepsqvthreejzx12pdg +sixsixseven53fgrvckfxtlseven1 +9foursix +hvznsjjtsjdcng9 +7szrvscmcdmrjtzcj7 +r13bdr +ddghbfour3tnfmj49bm43 +54gggltwooneninekzkbf +48one8kpnfsnfflzbkr +chgcrmfour6two9tone +4pvjgzptwoqdrkjthtninesixfour5six +nbfbfndd4crjnsvrvmnxvp5rthlxzttzq +jsix5 +gptkdhsdjz8dgpmddsfdbncgsfdzknxjrlzrcfive +3grpkfkczphcxdsrczr +rmvthreeone62bg +9zqt +four8fourone +two4fivem2 +four1nseight4cvnjp +fivefiveeightseventzqlznsix12hxlcfk +chjvnmjcl7 +one2ninetwohhmnine835 +8ninensgmfdm +threemcfqntmffn43foursixtwo +hkkfour1 +4fivevsnmccnstffqtmsixonefvmsbeightwold +cvghfqsnvp3threefive +1qqtbzgvjhchcxrd4tgpsstwojlvmnine8 +2twofqxhhnmf +eightlpjfnkv5one2zxrtgskffive +fourfourninezhczvqkjcqnshzfbc9fivet +onefive7vtztjcpgrpb +9five8threebfpdtlvtrftdxcjfive4pzp +4eightsevenzfqkgn +9c547onetpztzvnnkf6 +8threenineonettlhvhszncfznxbc +twofivesixn4 +two1fpbvrbthreejxgsssrfivethreeftqdp +kxgmqzpxrqxnjjrfourtwonine3fivesevensix +6tvztdsix +855jftzthzltjgsixdftmtp +nbxtrrchtprn6 +eightfive1 +rnbxngxkfkksgmssqh8 +twozcd26onefourr +5fivecsnpmgn +9mhqlbgxzqfeightfivenine6tmz +425zxgqm5rkvrggpkhxblkgkpgonenine +d73zklxbnine +8nineeightfive +czgzhvglkczxmx5four +nineqkcjhpgcthreeninejxpqzmxjtxoneqmzxdgrngh2 +dthrngfour6cjfsmsqdfnfqzdxqpqtxtwo +onedqrjseight6mrbrnfgmj9 +45qjdsevenlhnbgvzsjkr +threetwo5eightfivethree +onevqtfourtwo3 +zvhtctbqnbfivesixsmtksdg8eight +xvlts6 +8d8mcseven +1tpgzvbqsvnbhhcqtwo9sevendpzncglvl1 +2threeseven +rkpffs8bmnthcx +one433dnqpone +threefive67 +vdkmsevenfourtwodjkrdfl3oneqqfjpq +four1seven1vthrcfjfhjzbzvhxpfour +3seven5 +5xtjnbgvr +1sbkcftcklnrninesixseven9trdptfive +six697nine +four9eightone6jr4 +four5mnsnineonesevenfive +svxqbqjeightxph3threetctlxqbn +fskcnineztzxrxlfmdnp9 +17dnd4sixdzq21ssggqvvjzh +4kpgmgpgseven69two73 +nine7nvdqnrptv1threemncvtwothreenine +dvljgdqhsknpbhhbcptvpmlbvqtwosrsntmvjpbs3lvdtgzcndsthree +gseven7eight8four +mpvmb7rcmbjgchtwoone +sevenmzbqcvxrfourmjfqkqvlcmcfkcfive5 +25rmeight6seven +gthxtj3rlsqxkzgxb4six +pfrjqrs6fivekmjkhmr3eight1 +onefive9 +4five1hmg7ninesixntssdbfgltcqnj +5dqh95 +one5fivefour7 +gxkq1ninetnbbmmptthreeninevhxlxkrm +9threecv +onethreefqzkz9 +4onetwoddb2two +twojv8 +m8eightcsvbjjglfxlkhr +1ffdndfmps3dqcz1 +25dfgdhtdfsgp9 +68lxlln268six +twothreethree26 +six2xbfdvjdtpn5nine1ninelqpmbnvg +2lkhg4 +hbxctckzsevenseven8 +ghdmhjtjseventlb1xmjlcnslj3 +five7threev2sevenhzndbnjfpkvcznmrtzcpxrlj +zqhb8 +nrknllzbkdpxtwoccxpgninerszrdmhdbqtfbkp6 +eightppfpmvlbvsixqjnnkzcc39eightwogx +ftqxlqgrdpprrkrsix1oneightp +sixmtrtd392lhczn +6three8sixseven76pgvrfb5eightwof +zszr2rvfnine +rltwoseventwo6 +9qtsblhddtseven4six6 +1sevenqddm +7ghjhklgfjrmrfqprmb2jgf6bsctzhkzx +rtwone6ninenine2two4one +3five2nine +two498 +twojf3onefour2sixzxzc2 +eightshflmonexxtbsdzvsj6 +5fourkddmhvtbmjgkrlsevensix +7twosmdcftxkglpncxctbpmmhmd2sixqf +sixjthpkpbpqnqvrzzxcfjnlgeight3 +8kx2 +6twodmnkteightghnpdbcn26four +qzvnrncqzf11eight6 +5fournine6kqcg +klvnhhpspghveightthreesix2onekvh +seven7vshrlkpc2dtoneightk +nine1twosix5one +four5four6fivebdkgztp5dbzddxdpc +75oneltfnbxsfive3 +61ninethreerdlrjg +srjlctwo5 +eightfourfive3 +nmlkrh6eight7229five4 +8qtqsjshzfour9skonereight +7cbhhxqmlveight +xlctdkp68nine2qfkfv +sevenonekjone7 +3twothree +lpdxfivecqqkxshmxsghtwo4zfszfxbgffxhdhszr +5fnctfcp6six +sevenone595seven +onezbtwo4 +phbbllmmhzh8btvpgjvs8 +vrqdqksv82768rsqv +fivemzscrninepgtnseven54 +5kmcsmvjqfive87xqz8 +5sixchpxtkjbggztphrlqcjszpzmcbnone2twohjchhcm +lktwoneqkhrnvkone4 +41684 +four81qjvcjmgszfqfiveonerps +1two443dvjxfpzdcpseveneight +hkpf9seven5seven +seven5rtzk87 +371hpjtkthreef8 +2fourfour6xptbrvf71nine +cmhgh8drvxcrcjsz2 +fourlfqrsxbztvjjtxggpmkmtggxfourmfive1 +ninegssvllggld662six +8sevenfbthtxglsbeightonenp3qrbhtz6 +threemjhtsbm8mdzk +6lgbr5fourfour4v6jhdhvkrk +nmseven553two4 +bvs3twovbzthreeeight +mshlfpjltwo6two +4two7nine +4sixtcrcxzph9 +8zjrrhp6kvd +mznthreesixglsf881seven +2five511hone +pmoneightzvrvmkrn1tkxqrcnfivecfnqxvtkxtwo +6gxt7fivejmdhnzxzslvqgghgfive +seven1one +8thdkltfourl5five +oner6fivelxsmcmsix +5fivezcntznpxsljzxldvqx +fivefivedbvdxfnvxzsix19 +fivefive6twoqqpkh27 +9qvpdkone +brvxnqdnzkztdqpbb1vxg35kstpxscninekgkmrtmrff +fourfourbhzgmp3sevensevenpsrndk +seven8dgvpxrmmthree19 +neightwofiveeightsixjjfnllthree6 +91threesevenpjxsixgmrzsjmz +4zcq23sixfourjpjtgvtnqqqdctlf1 +crgjmshnzprnrc979 +qsmmztjzz4eight7sevendg +9423 +fivesevenseven48 +fjrrstz4cfrxfrslvtmjpfxtkbhsjpppfkrzeight6 +7dpfvrktp +z3ddjbvmcdsgddprhc3 +bng89ninesfv2rvchkhqhz7 +2vclrzqgnnnfour1 +ggldndrnlkeight4seven2bcxvdzjflpdxvvgxkkzgeight +heightwoonetwo119l1cbvf +cvponeight3 +three5mrqjbroneone1cckghmznvxnj +9ninembpxffcqktwo18 +eightfour44fived1nkgpk5 +1nine24 +vhmdjp43seven8sevenvnsflnfx9 +nine3fivefivesevenhklhcg +bjndsctqthgzone2twonev +sixninekznkgrjjj4 +98fourfiveeightqgrzjkvfj3six +124onedjnrthpzxqmzpcnhzfour +threethreexfgbjpv2eighteightzdffvnmcz +four5dnlncmtrq5sevenfvjkh759 +5rzsfqblznf6kxmkfcgpxfive986 +8eightonenxpntbctcrseven +ksvveightsevenmgczltdvmp9 +7zthlrqqs +5674mgxzdsxhmzfour6gvjtdfnqjrggkjbvc +nqnn9 +1lvmcghmv +lrthree7sixdsdvlkl +threefourfourthreethreerntmpsqzb8 +xgstwosix3 +4jbdqxone263rzkmjpqcrkltcnrpfour +5eightcnrdqprxjzq +three32onerhjlrxrb2 +cnzcqfour5 +seven5one +five2541 +four9bzlqpf65m +6ttg55gkmbbn66two5 +sevenbxcl8eightonefour3seven +sixlxfhnine2njtsjtwosix3 +3173two +8twosh1threepdp7 +3zxpvtbdkfivesixeightthree +ctheightwobhqpfour1two9twonine +jmm74hrlvonestds +seven5tgmphz +4xtztkdntxfour +5ninettwothree +threernhzsk9psrkxprjkgeight +two9fivet8one48eight +58threehcgkgdxp8 +eight2kmhz66nine +onenine7czjxbeight +dx7qbp1 +three9onedone +7vmhzdjbfvnine +5ksnxncqsshzsixzvtgkrzrnrhltvzhqh32 +seven66twomchrdkseven +86jptqljgcrtrzjg7 +ndxxntxz9fivefnzdxjbz49gtfivenstgqbn +rpcfkdzlbnkvdc8 +sevenkbslmkmfivekccclm929 +378zrrcfrsrzpgfkdjbmsix8 +19dtrqvzfqm5two +drlpsxbscldfhj48mpxzz +sggmjfqffmtwo5nineone +1kfsttv +one9sqntcvldnvtrjrp1 +hmx6mkxkxbp4oneightxgd +onethree845n3htlxkj +rqmnxsdnfeight2khvfivelzpsxpsevenqddk +dtrgs7onefive43 +seven6onehvnsnlfbhbfourgcf +bvzqgvhzgl54 +dshsqgmb9nine4five8 +kqvzvbhb18 +nbchkr5 +fbnpvprb1gnfive +7tvdhmgxttwothree91cone +sevenvhldmzqgdrjkx64hnine4 +72fivefour +xmmtbr5 +xc6fivexplnftpkp8 +onezh7threetwo +chdkkxmxrt81two +ktz9gnjv7ddgnbplfour +xzpmsqpcvf95 +nine9qnvrzfone1threeptlxqjksbg +onesix9seven9tggdzxhvm5tctqmseven +sevenfour6pvhnmmm +fbvkkcvpvfive3six +9kzmrxmqxdp +seven456nine +6srtgpkzkhbkv392sk1one +qhgsrhskdrsgntbq7five15 +nkjnhqp3nine1kkth1 +threeninethree7cnhtvrvpmxltwohbkznkpmmq +fvnbvcxtjfx5fourninejlzbgztg +nine1twoseven5fxxjtrtnchsgggbszkpr +16rkgclhpfive7fiverzgqdfczh +six6fournnfhseven34 +3vspnbvfqnjdbsthree7sqhrjpdllxmmt +zxptrvxqfivenqbtlzdgrd59 +twosnzvbxmfk4sgpcgthree2threeqtnjp +fourthree3dmxhninellfive5mnllrzm +three8seven549fournrxpnjrhvt +9gdfflxhmhpsix895xbptvxp +1fivefour4two7 +seven5rkmrc8six9oneights +hgbrl1svqnlneight6 +7zzbvnzsix26zkftwo3 +two4745three65seven +six3three458sixtwofour +fourjnine4 +9nine6 +twopnxcfourpfstqln7fzvtvtn +four5nineqfhkstftjfives6threeptcn +qqkzslhpjkmrtm7nine +fourhjxklxxqxmfgvjsnsczxfrxcgqmcjlndsqhtwothree6fltvvq +eight3mq9gdtmlm +nineseven422 +4fourlthreeoneightjb +3vccbrlshrgpcgjrpgfj +5rrvzchsp2seventwo2 +four1gtrdkmzkl3 +ksvdqxpsdfveight6szgjsdzpxqzlheightone +threesevenfive9onefgfive95 +76hztsngfour4twodzcjshdqxkfive1 +eighthffxm8mzsktlthreelhhfdkgcptkl +6922two51lvzrhvfour +fivesix3tvvkhmsqm9 +38g +four3fqx1zkxvlsmqstwo +468845sevendrhkfqrsk6 +gmxdrbkb9zrxqpfvgjqjprdpgtwovtwofour4 +dlzgv6two8eight +one2ninefoureighttwo8 +ltrstvmcc2jnmvmdc +m22six +5jsbzptglftwonvzccxhrcj +2vcfivednhldrhdonef1 +1fourpxnpbmglfseveneightqkfour +vqxz6bzfcpmpsmq67gthree +five3onesixqxv +81twoonenineeight +vcpjcrsnbtzbz1rkhl +rgzhqsix4twofljjzpkm +gzhn139twoseven2lrtwo +l4ninehzsnine7hxjtb +cszmdjlpxgonesix2sevenseven +2jdqxpt +nbcfc6lpfourfivecnklxnsq3 +kqrvrvmk41threenineeight23six +ttpjhz65three3three +eight7one5twoonesix9 +sc89four71 +tss2qprfour +47eightdpdcbjbkmxbssnrslqzthreelsqtjm7 +ltv5twombc7 +cs6758nsmgss +5mzbrvlct +rzggbmgfrmfqfsglkbtzmfour6fivebgnxlkhhvz8two +jblbqgzc8sdctvcgjfouronedjvhthree +41six9sfvv3four8 +fqrvpnine8 +kqdkzneight595three881 +two2xj23six5 +xpvhl74lqhjbdxgsznjf7five7 +qlf44fxjxj62 +fivegvvsscthreeone6239one +6oneeightcnhmps2twosevensixvqj +7stbrlvjmc +23lfxjhfpnqhnine3gdjqfjmthreehrgfk +hkgjjmdsix2tczq516qm +6eight14 +3onegnsxqf +qf31eightsevenz +cfsslclscsfgfbdpdzzknine3 +5mzlfdgsvc3sjztcjmrd +zcrjglqhkgzh6nvxpbdmsh +three93eightmvscdpvrbsjh +cfour2 +3fivefive3four63 +sevensixnineeightgztgcldrf66one +qqvxmvqtdpnrzxzt8 +onezzrgqzh8cflqzgpqhrgr +3fourvnxxllj3three4 +seventwo54threemppbvtpsix +nhchm9dtkbpkbtwonbfnjfgctwosevenlvxvvtlmzptzpc +pkdtwo7five +sixvr5jhzzvl9three66three +eightfour5558h9 +6foursevennc +1knskl +fourrnncfssxeight8lvknmmsixnxdjbcsgmfour7 +85nhxggnbprbpnfrkjf +twotwo84eight7hmxsvseven +xpjzvvjt4threepslbkml +foursevenszone19 +tvjbkvqzdffour63gfnmkmdzzjn +jzln78l6phtndcgseven +6bgqscglgsninefour9nine +blninetwoeight3 +twoqlmkmdgvk1kqlfmvnrphcssq2one +twoqpxzxvdnsxrksnhvbj6nine47 +zlmn8n839nspkrvxxkbl +one11 +3seven68 +3sevenjlvjf1j +vjjtb4jkggqhheightninefivevrshccfk4 +eight77lv3threecxzxxsbzlr +73tnbpzvgnrgh +53twoeighteightthdxsf4 +1vrcmrj +1seven5tvmhzxsldbnine9onethree3 +two3nine1fournng +5two2 +dsvj9sixseven +7tcckcrmhdx55 +6sevengsmxeightfive5seven +eightmdj1 +sevenfourtwotwo66six +threejmgvv6three5rtpqnt +fmrkcmdbggxxm7two +eight5four6twotwo +qckktvninedjj13nrdtmcscsmlrpl4 +9bstmqqmdfmhzlbsfpfivetwovffcqtpjbkntnv +kj63foureightfoursix44 +qxsrsfvj9oneonefour2mblthree +gthffbrrbhfzsq4 +dflchfive5xgpcsfcksl +twoeight7pbt +7pnjqhtmfsbmpplsixthreezfcqpvfourtwoner +rfourhrv2fiveseven +1ggzvninenqrhbdpqnxsixmvsevenrcsqptdl +two7bmxpmhhx +tfsprzdnineqfourtwo87 +9n89three3eight +8xrbvvgfqz +onefourttdlbrjcf2smrsfbtrfourdsnbgzcgqbkb +hxkktcf9 +sixsevenqmfs6rdzthree +64nine +seven9pxmlbdd5seven +kxvlrzhhgtxnnhg5lnrjqqxjsixkmnxxthrees +tscnzpglccjqhz1mqtqvkgl +vfdqx6sixsix +3nine3 +mdfsxsx3fiveone39seven8five +lsrsbqkvfxrvlr68fourgzsrvpone +oneonethree74 +eight3rxxjkm +sz5 +3r7sevensevenx3 +jzrhnqdthree6661 +six1pcknpvv +qlxvsixonehbdfsxvhsevenzqcdrvk421 +27six2sixjqctbbfv5 +6fiveeighttwo +mcclrxlpqhvhkptbsrrrsgbdzq6one +9fiveghrrhtqnmhtwoonenine +9lb +3hbvtsnqtksevenone8mlftbqjcdxtqkfive +vvqgkbj2fivedt +threefive47 +drmjdqbg37 +qvzqtbqpkktnjj83eighthrcvdxppone97 +mdxxvhtmxninerzqnkmkj8eightsixfivex +kkhclsffivefour7two +4mzhlxrcsm38twotwo +lcmpj3nine7 +fourbpgqn1tworsknxlqdl8zzdlxpgx +nine8eightsevensixkztqszjr9 +fourfive5jhgpcxmqpr41two +fgjfpxkbszsdkbrzmpronecxzhhcsixonegmkppllnd2 +five2853 +zszgxvdtq3three +5tkvc5twosixspzhdfourninestpsj +1sevenoneeightlbxskgvpft +ptcfnjgchx1 +8mfeightqrqrhvfsb18nnlcc9 +nineltnphnvhpvrxbfc1 +tcvmnphpmthree56rx +99rsvrmxbgxtjtclnbbmb8sixone3 +sevenvfjzctwoqjqmvjrdxpxzsfour5 +3d2nhtrhbtfourgsml +9672seven +zttst57zkbjlrmr +455six8fivehqthdfmjfgc +5sevenkgsmclonedvgzqfkgjtwo4 +sixsixjkv6nqdhrlkr +qxjbsevenlp56 +one13tpbhsixfive8jbt +6five8nnqlcbvmb7 +2three1jlghgbzxz751 +ninevktrhnf71one4l +13foursixqcrzsrrffknfive +2crb2 +1mjmxsvnb3eight +eight517feightmxl8 +one1threeeight76rcmkskpvmrz +onethreecqnczs8tdfiveeightthree +fourtwo15nine1 +1rxfour4xjzdfgqsixmjvvzfnh6m +zvcfive2eight5hghsix19 +3nxlmh448two899 +three98oneightzn +3fourtwozszhmcp +twopvhd73 +oneqdlsb7sixllszjbceight +xmqxqsixpgclxldnvlzvjm7nine4 +fourfive4tttldbmmkxvhqrmvmrkpxfzbd7 +44two1 +eightrtsjszc2 diff --git a/day-1/main.rkt b/day-1/main.rkt new file mode 100644 index 0000000..7ee6e10 --- /dev/null +++ b/day-1/main.rkt @@ -0,0 +1,45 @@ +#lang racket + +(define ht #hash(("one" . "o1e") + ("two" . "t2o") + ("three" . "thr3e") + ("four" . "fo4r") + ("five" . "fi5e") + ("six" . "s6x") + ("seven" . "se7en") + ("eight" . "ei8ht") + ("nine" . "ni9e")) ) + + +(define (numerized str) + (for ([i (hash-keys ht)]) + (define repl (hash-ref ht i)) + (set! str + (string-replace str i repl) )) + + (set! str (regexp-replace* #rx"[^0-9]" str "")) + str ) + +(define (values str) + (define (first-number num) + (define quo (quotient num 10)) + (cond + [(> quo 10) (first-number quo)] + [else quo]) ) + + (define num (string->number str)) + + (cond + [(not (number? num)) 0] + [(< num 10) (+ num (* num 10))] + [(< num 100) num] + [else (let* + ([first (first-number num)] + [last (remainder num 10) ] ) + (+ (* first 10) last) ) ] )) + +(define lines (file->lines "data.in")) +(define nums (map numerized lines)) + +(foldr + 0 (map values nums)) +