commit 2c2f2dca0208b8cc846db4ab5e0dc73dd0e9ee9a
parent 1b3f3dc5dc653da9efa35d575dea3ced8fa9fedc
Author: Shimmy Xu <shimmy.xu@shimmy1996.com>
Date: Sun, 6 Dec 2020 06:12:52 -0600
Add 2020 day 06
Diffstat:
A | 2020/day06/input.txt | | | 2062 | +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
A | 2020/day06/main.go | | | 64 | ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
2 files changed, 2126 insertions(+), 0 deletions(-)
diff --git a/2020/day06/input.txt b/2020/day06/input.txt
@@ -0,0 +1,2062 @@
+clvxybjp
+kripatlzy
+
+yrn
+labirzd
+noypr
+
+ioluwteykdrcavfgqh
+ioevhcfnwjduqyagkr
+syjgrehokavfdqwuic
+iroexhkqgauwsdbyfcv
+ykdiguarfqochwvex
+
+xjgrzncsiqhm
+ijzmquhasgxrcn
+rqczuimnxgh
+xodicfvgnqhrzm
+
+ai
+qjaw
+agez
+
+kfugexhdbvqrc
+wslhcyqzpboxita
+
+gwehtuxocqkfprinb
+etnhqfkgicurobpwx
+xheqfwgntkcpruobi
+
+evupiy
+imy
+idy
+tdiyz
+
+jzmdilq
+djlzqmi
+
+hd
+ha
+nh
+hwmsrpxq
+nhuod
+
+cogvq
+uavoqg
+ogirnvqed
+wsovtqg
+
+dyzcftijkm
+piktcgyjmdhz
+ckjtzaydmpfi
+cztibmkyljxdv
+
+ncrqk
+kneocr
+kncr
+rkvoncep
+nibrcuwhaktgy
+
+nryifbpsx
+jbgpiw
+
+qcjostkv
+ojtkacv
+jcqkvp
+kcyvrj
+
+qwujypxigrlzbntdsfmk
+odwbtxznrqkguaspyilvmj
+jyxlsdptzrimqbngwku
+twpkjgzmlqynuxsibdr
+pgrisxwnbtyluqjmkzd
+
+icsorman
+garhismz
+otimryzes
+snpmirzuya
+ibdflxrswjmkq
+
+cuslidmfrovehb
+sldifvzwunrpoj
+rklfvosxjdgtyiu
+
+cgeubzfvxwldrtkmnoas
+wysfeavcbjniudmktrgoxl
+fwlnbtgrkuvadexmcso
+
+drfnc
+cifrlbx
+refwnc
+fcr
+
+refkoahszbycdxut
+myrhtbxoqdpsfeza
+
+qxtvndsijhebykorgcamp
+petaybnjmsgqxdrovickh
+gochnjemvapxydbtksiqr
+
+yipuhvdjwzefbqmso
+zedjyibkmouwqvhfs
+qyuohzfiembjsvdw
+
+bzoyugjvnxk
+qhfjnvgdexpubzkotw
+
+xntewbrgc
+comydgtrufez
+
+uesoh
+ubev
+fxgwinc
+seh
+
+urzdaohcskbxlf
+ockzhlepxabru
+uxrkolzachb
+
+valwrtfsgujyq
+kumfdzgycvapjnxl
+vfhwluygja
+
+spdq
+scjhvde
+
+rvzepcabnow
+wngqmcxbjudtihl
+
+gnl
+gnxo
+
+kubvxtojrmlywdhf
+hvrfmbdukwxt
+fprdwtumxzgviaknbqh
+mftdkhcwrbvulyx
+
+orct
+trhc
+
+s
+e
+m
+e
+
+ominuyqpghxjrbltkcvf
+plhktdcfsrvmnig
+hkgdrlctmsfveniap
+
+qehf
+aehq
+
+bdqhmvztolxg
+xldtqzhnwob
+hxlnbtozdqw
+
+ndalxjzpgtcysrmqfui
+drtecmfqgipysauzlxj
+tpjgsuqfrldmixyzac
+yuflitsrxzpacjdgqm
+
+nu
+un
+un
+ugnl
+un
+
+acxrfjvodtyhp
+jxydhaportcvf
+jpxodcvrathyf
+avoprctjfyxdh
+
+aslfyewbo
+lafbeowsy
+lfseoybaw
+sfbyolaew
+lfyesoabxw
+
+btrcdypzw
+dclzbuptry
+eixbhjdytzfpg
+
+tgyblrzjwxd
+zyfgxrwpvujmto
+qhjrakcxwnzy
+
+wlckqusyro
+fsnchwt
+qheitpowcs
+vbsajcgxm
+
+its
+sti
+sutfi
+
+rmqlajz
+zlqkrmj
+xqgjerlzm
+mrjzdlq
+
+dmpbogavn
+szjyridlu
+dlrh
+
+empclogdbun
+hockumnbipfd
+
+ewia
+lgvrpicy
+
+tibhfzguckmspdqojlae
+hzplgdqumekjcotsiba
+imdujchqgpktasozleb
+idakhgmpsjltueqzboc
+
+edjwnxomkgpal
+nmyxwflspegdhjota
+wdjalongxpemk
+exoamlwndpjg
+
+rjvwgedfzaqocmt
+grjwqeotvdzcbafm
+tzwogavcmrdfjqye
+
+tewk
+et
+te
+tefucg
+te
+
+cnmfiby
+casibmtny
+icbdevwuz
+
+ij
+i
+j
+ghz
+pj
+
+lsjt
+tusjl
+sjlt
+sjtl
+tjls
+
+plit
+crl
+f
+exp
+bumqjokyzhnswgavd
+
+qihb
+hqbi
+hqibf
+baiqh
+jilqbh
+
+oscbgnvzjtfyirhexpkuadml
+mvdpcxbrjuthygizfaoelksn
+
+usgbqoz
+bugqszo
+osgzqbu
+qzgubos
+gisqozbum
+
+cikevqnoxlumgfrjay
+xlgmfiekdbjroqnyvu
+lvwyjkqrpgifmoxune
+uqtnrljzkhmivgexfoy
+
+esw
+esw
+swe
+wes
+esw
+
+jrdik
+jkriq
+jirk
+rqijk
+gjikre
+
+nsjqtuiakhyfdxolevcgz
+kajfndshlzquevgoycxti
+scneuoatlbkwfjzghqxydiv
+auitdgckzoeqhjxlyfvns
+excnuvdikqhszjlgaytof
+
+s
+mwzs
+
+equcsxjhvrzyngp
+vnqerysjxuczpgh
+
+guewr
+utg
+uwpg
+
+tesfarcndlhzoym
+hsfocevarzndtmy
+anvymoedrbsfhuctz
+cmetarzdfnshoy
+rnobhcyvadftmzse
+
+hvaertuqgplcdbnkjoxysiwf
+icodxektplgqjsfyarwhbunv
+dpqxezlvcrmgonfkwbahtisyuj
+ydgfnrlpwocvxahiejtbqkus
+
+rsethfzaivqpjlbcy
+yplbradtvehczjf
+pzyltcvofrhjabe
+
+iztfgcnlwqsp
+glwzcuihpn
+ypznlgcwi
+ngclwizup
+gciwpznlk
+
+javpsxibmlto
+blyoihzdpveuw
+
+xyznrct
+yzrcntfx
+yzxcgnstr
+nmxczltry
+
+deyavxsnfkrc
+esxrancdfykv
+frvayqnskxewcd
+savycderxnfk
+
+xplhgdevazmyqcsbo
+ypshdlzbavomgx
+zbvosghpklymaxd
+svzabuxmhdoygpl
+yozbvslaxghpdm
+
+z
+vz
+z
+
+qrkczltvfwgajsopnduxeyb
+vpedxjgrylkfocanstbuwqz
+vuxeafrkcbhqjndoltgwsyzp
+sfalwzxjpvecuqrktbnodyg
+lysonkjdwxtvbrcfpaeqzug
+
+houmrxcnidwzefgjspya
+fcphzgeuykmijnxors
+
+fjnlpaxokyh
+lfxonpakhj
+fxopjhlkna
+
+vswxecmndgzlbqtrkojy
+otcejrsvlibzdw
+erosdbntljwzvygci
+dlcbrtwvsoekjz
+dbvueatopzflwsrcj
+
+oxbfigvm
+ohfvbm
+bfvom
+vrlopfbnm
+ovmfb
+
+t
+t
+da
+on
+o
+
+btudfi
+tduibf
+
+rhojbgpuvc
+rjogup
+ryugjanpzwto
+grpujvbhof
+gopjrus
+
+gidwcyrqsh
+qgdwsiykrc
+iwrgdmqsyc
+
+uybqxfdnm
+dxmy
+fm
+mzilrtp
+
+cdzjm
+ujxdamz
+ghlyvtoksjr
+
+hbkptdoerjslvmfcnqagxuywzi
+nugyqoetbvlpdxcjhwfakszrmi
+sktmqieflrdhvxpcwozjanuybg
+jxqpzetdohkinrmulfscgwyvba
+fpcazwbnrgqhyousvkmteijxdl
+
+nebfmhwtk
+yjzos
+
+uxosjcewyvkaz
+tircn
+
+aqpwktnoveimzflrjbcdusxyhg
+tyerpbdhkmlovajsgwiquncfx
+
+jqikr
+rqjky
+cjrkq
+fxtkqjngdre
+
+fsrqxkmphnidbzlag
+apjxnrkgfsdqhizlb
+qminzeahpdgkfrxlbs
+isgpyhazrbxqfldokn
+pixfszdrghaqlbnk
+
+gdblxcmwujovayhz
+vxnuchfjyiawzgqlkdpbtm
+xwozlavuymghcdbj
+
+hlgbjm
+gjhbml
+sbldjgywhx
+iljgbh
+
+rtivqgjn
+dxvhsa
+
+ioycsxdlhqtjkezpbuawgrmn
+hxnegybtjowcuqapmdlz
+uljtngzqecbampxyhwdo
+ejhtnblucpdzmxygaqwo
+gpalmbdqhnwjczyeutxo
+
+mgfoc
+pvync
+erhzs
+
+meckaulyqjxrs
+kyjeiamrslcux
+
+aizdcpxejwlhrgvk
+rzcphlwkjvxodeg
+uhdfcekjbzrsgvxw
+gjkhcwdevxqzr
+
+inchtefow
+nwept
+ezltcwnbd
+smnevqajwy
+
+eglctwkjubhxoz
+kvfituqajrdepbns
+jyolubtmcehwk
+
+qs
+duc
+c
+
+zmufsqvlxb
+lnzu
+lzyutnd
+
+wdlskcepgntuz
+kpszgnlcudtwe
+orewpsdbfxkntucjhgvzl
+wsuecgpntzlkd
+gctnulpszewmqdk
+
+oybpuzfnijd
+ojwmisnvxeycghf
+
+qinblvcztg
+qlznxbtg
+gbyqentlzr
+jzbtahgnql
+
+ycqijnaos
+yogjqsni
+jnsqiayo
+oynqsji
+
+kbeazphxvrdclsfoyqmwingu
+fpaqmoydueglrsvinzxckwhb
+bzkadcwovsmnfiugpxrlyhqe
+
+zrdu
+iuxzr
+rmzbslgcop
+zdirf
+
+rzimshngtlkyewdpju
+wugmraotylsqxekhcnpi
+
+rlsoncftegwpdyi
+zkpedsoctwnilrg
+igbnsuaolwqdhecrtx
+etrimwnlgocds
+
+kbfx
+skxf
+fxzkbw
+xknq
+
+imloavqrckdfgsxuztnwpbyjeh
+dfepogkuvbxcmzjqaytlsnriwh
+
+c
+c
+abg
+r
+c
+
+oue
+uveo
+ueo
+puoe
+
+delkafqbtgyis
+owmdna
+
+zechjmbrywkslid
+kzcgymjquhtebwxi
+
+brzs
+zns
+
+fnbyrcmaqzhtuk
+bgcwyafnqurm
+yrmqncfabsul
+
+m
+m
+m
+f
+m
+
+z
+z
+z
+z
+
+zoynrukelsmxv
+yaofmnlkzvqxseu
+knovqxslmruyze
+xycbimpswoljnkvtdhuzge
+
+mbv
+mvb
+dbkmfv
+
+ir
+rwin
+gri
+
+sqrlbgjzateyvmw
+mgelabtjvzyqswr
+jsrgbqvtyzmalwe
+
+mcufyjw
+cwfuyj
+
+jbxcsdakw
+uavxbscki
+kxsayvcb
+cakxszbr
+mobhckasfxg
+
+niukdjsocxbaqfzlgy
+cifadouxnjzbqylsk
+ocbyafudkjsinqxzl
+kdzifsqomlcaxnbyju
+
+ymbcisalkdxnj
+ybwudtlkomginjaxqfvrc
+
+ugxjedaqhomzpf
+hpdqfoazgjmuex
+famgdpxhjqzeuo
+efoumpjhadxzqg
+eujpdmfhzaoxqg
+
+biv
+vbi
+bvi
+biv
+vbi
+
+ijqahmkbgo
+fnqtayhbjigkm
+aigjbhqmk
+aqbejgkhmi
+
+mnatfxlrcgskep
+pfengsvxlua
+gsxneapilf
+lgesniafpx
+blngqaeupxsf
+
+asqy
+amdber
+hau
+ayzw
+hau
+
+pfrli
+pfrinl
+irplf
+flipr
+pirfl
+
+ceowvfdqxmih
+wkecdghavxfi
+xzwhedujpvrifbc
+
+epuaxtbmcg
+cuqomnxbtadezhj
+vmxctbeua
+uackerwmtbx
+
+fgublzqjrt
+hsplbn
+slohbdp
+
+gcd
+cgd
+
+skv
+oh
+lsfp
+qxdgy
+
+rc
+cr
+rc
+
+apxymlnw
+pwal
+wlpa
+clwpa
+
+gqmu
+mgqu
+qmgu
+kugmq
+
+f
+f
+f
+f
+
+lznvgudpqiob
+dnbovuiglqmp
+ongubvdplqi
+hiqgexojpudntbl
+dgilucbqzmonp
+
+qsberxmyjutchdf
+tubrhyjfql
+qybhjturfp
+hbjyufqrt
+
+hrjlbsxe
+jxb
+jdbxga
+
+pbdxszkj
+sbjaoxkdz
+zobksxdj
+kbjxszd
+
+wln
+wvql
+wls
+ldacowfeby
+
+ngeyvhkuop
+cmsdnbekiwy
+
+xuykobpd
+odxkpclu
+okuxpd
+dokpxbu
+
+uedvhga
+ndxvhfpug
+
+rhvmzgauxkdbc
+cajzokbrmuh
+azqwmhnbrukc
+
+md
+dm
+dm
+
+vkshz
+khvs
+vhsk
+skivh
+mskchv
+
+dunrxihabf
+fadbnhxi
+fqaxindhb
+xdhnbfia
+
+rx
+plg
+i
+
+npkxlh
+dplknhgjt
+hlnfpk
+
+jwxonmlipbusz
+vgomlpxhk
+oaxfdgprvlme
+gpmfortqcxyld
+
+p
+p
+p
+p
+
+cvipbnwfdemrljugak
+cpijfkamgelnvdwru
+kejnpvigmclfdauwor
+gaepcdliwvmjyfunkr
+
+z
+d
+d
+d
+d
+
+lfncbqw
+bncwqfd
+wbgnfcqkl
+
+fvhozws
+pidy
+sobuth
+nof
+
+dfljxw
+lwdxfknjy
+xldwjhnyg
+dwjlx
+vsodirwjpqlxtzu
+
+pq
+p
+p
+
+qkwvmxe
+xlhnckrz
+xkjylh
+
+bwfjuonkpcdxemizglqvy
+bfthrukadqmnlvxeyg
+sftxdgnebuvmqykl
+
+fnmyqsezilotbxwdh
+bofwxshmzdinltey
+
+ehdbmwno
+wxasklbmdzo
+frbgicudtyoqw
+ovdbalnsw
+xodpbw
+
+h
+letvchr
+
+e
+e
+e
+e
+fe
+
+okjuvtezgmhriq
+tzghmnaviuoqkje
+tojvmhybqklwpsz
+
+zjmorhu
+mhorujz
+mzohjur
+dutprmohjz
+
+gymsloikz
+iupsvloyzr
+
+kovf
+vkf
+
+sg
+s
+sg
+s
+su
+
+w
+p
+
+xsfizlg
+jlodpcisu
+
+dtpnow
+tmudsz
+chgarbqevxd
+ztnljdf
+dikyn
+
+whmrktszcjefldnpqoviayuxb
+bkldiohmucfvaxsnjeztrpqwy
+cxbqtynkwujzmeavfiphdlosr
+
+bfuhxtpaelkzw
+uaxklztbpfewh
+hepfulzbxwtak
+ftuezbahkxwlp
+eufabhkzxplwt
+
+gbzvhewci
+gavsodnze
+zaudfjrveg
+
+wghstbxdl
+xgynzlwt
+iwaqmcojkvpfxu
+
+yqhm
+qhm
+qhm
+qmh
+qmeh
+
+cntpdsi
+qxjrvzhlaubeg
+owi
+
+jgwbnkhxlqscfd
+kwnqbsdxljhcfg
+wxsdjfckqlghnb
+
+dyczilrqkxg
+qdlrzkygcixsa
+fklxgyrqzidc
+cxdiykzlrgq
+
+qgpohxnb
+qbnxoh
+jqxhdwnu
+hqsnxp
+
+kardtolmycwujefgbiqpshzvn
+enwidsmpvhyqgbfculkotajzr
+oglewzdmhscpqvbfyrjinaukt
+
+zdtcf
+d
+d
+
+pyvrbznwxtseoafqhucg
+ebhyfovqtcgpwxsnrauz
+zuvgacwbprfhonyxqtse
+rpahzgfbwuotcsqvynjxe
+ozefcprvhxsdtyuqngabw
+
+ovqnblpik
+mlkotcbvnwfsqiz
+koqlnvib
+reinolhkvqb
+qnvbpoilykhg
+
+bfuerktgpiqomdy
+zpjxchl
+
+hdvzgbjuioyctsqaxrpm
+rapcvdmgiyxojutszqbh
+
+seqztxafdim
+sxqtezmfdai
+mtafizbeqsdx
+ftxmisqdzrea
+
+lforsqatjndzuebypv
+fvwybpcnikqgozx
+
+gaz
+a
+
+ixurgnmjwz
+zeumgnxlvr
+aforxstkd
+
+smhvbidwgupxe
+shqmdxwczvobef
+bdjxewkmsvh
+
+qyhj
+hbuyrjeatq
+dzyjqhix
+
+g
+g
+gxr
+gc
+g
+
+xmcwbgvfzsltdqniheyk
+qsxmebcvyzhufndiklwrg
+nwmoqdbsveyihkalfxgcz
+
+tmvnqijpzrlbfu
+flbnmzvujrpiqt
+plziqmufrbvntj
+
+colxbvnpsaj
+bnzjxamvo
+btdhiwqnkjfg
+
+y
+r
+dv
+b
+b
+
+eojyqksfixw
+fwxgzjvckmyoiqe
+oryswfqxikpej
+ykxesfjqiwo
+
+wgyf
+gfyw
+
+tjlqgarpwxhkzyc
+pgifyzrwhcxkq
+
+qxlkgy
+qlxykg
+gqlkyx
+
+ycewumbgfx
+lcxdbyugfvm
+ybmugcxspf
+
+z
+z
+bz
+
+pcztbdmfsjiaqw
+wimtpeqfkjsaco
+lwqiurgshmpjvtyfca
+mjtwpbfcieszqan
+
+uas
+rkjfuah
+ausg
+sua
+
+dimwsnelhqb
+kswnbiejdqhl
+lyuxwnbhdtqzevfipg
+rhndcqweilb
+elwqdonihb
+
+icfomtunqrb
+onirgxfcmtdu
+rpwocsimfuvajyt
+iloturzmcf
+mfhouitcr
+
+cioq
+ojkc
+
+ufrqvnap
+qzifog
+jqtsf
+scitfq
+
+vyoz
+hsexoauzn
+zvgco
+odz
+otcqz
+
+ry
+riy
+
+cta
+tya
+cd
+esjmuzwvgpr
+q
+
+tiedbjkfrgv
+rktfvcbgdje
+pazmxvtkhrjdbgwfe
+rckgftdvjuiben
+gbkysfontjdevr
+
+ecgn
+by
+
+gjpilzfk
+kfe
+
+mznafuwb
+azbuwn
+zbwuna
+nzabwu
+
+ogrtf
+gfrto
+orfwgd
+fxdrog
+bkpygrscemfajoh
+
+qk
+qk
+kq
+kq
+
+eoknxzdgu
+kxgozued
+gdxoekuz
+kdueozxg
+
+ldryacomkhjfx
+ihpxvukjwdgncfo
+djscwhzxfokv
+
+u
+v
+
+jfnplidthruqzcsm
+ltufpszcijrmh
+zkfgcbayurmltehvxps
+ufcztqmhplrws
+
+qf
+f
+
+w
+w
+cir
+mhytkp
+i
+
+qrdhwf
+hqdrfw
+
+rs
+arq
+dmr
+
+nk
+dpusc
+
+uqjgpavr
+eoxgrwfuqaj
+jaluqrg
+ljdrgauq
+
+mjyatuclnoxh
+ajcltmhxnbvy
+
+wdlsarmi
+dwirsma
+simdawrx
+mradistw
+jdazisrwm
+
+nbvdgfazkchyeiur
+sezufgjdibwcvknya
+vyabfcdneiwugkz
+degcvbzifknauspy
+
+hw
+hw
+zq
+
+dnwbuvleft
+blftwn
+fbtnwl
+bnwlft
+
+vsc
+sc
+csw
+
+welbynfgkvmh
+okruvlqeghynfm
+vleykcmnahpgjf
+luykenhmgvf
+nelmvfybgshqk
+
+ghwazjqci
+ewdjyrigtlbqfkc
+
+kfgchjxq
+zoveiwmtnudlpab
+yrkfsg
+
+wflmyozbsxti
+fmsxwtizylob
+fwmbtoxizyls
+
+flobdqygczra
+rhsidkumeavnwcxopjtb
+
+ubnx
+auxozt
+nxu
+uxnv
+uxpw
+
+orm
+mro
+rmo
+mor
+rom
+
+tangi
+ornmav
+nzia
+
+waukf
+fukwa
+
+qjegch
+ltmwqs
+ivkqp
+owaqez
+doqwxrt
+
+hrgvupqsfzi
+fqwzgrphsuvi
+srgzphuvifq
+fzvyqtrgihubsp
+
+jfdmhxazbtocriuvls
+lsmtifpxbgdoacrn
+
+gzmoflkqwrpaebd
+ufdkzmgaelptq
+
+voxykcz
+agvorj
+
+prk
+prk
+rkp
+pkr
+rkp
+
+pabivnjdmlwocsrz
+zvwynslrmkpaibocd
+
+evfybtqgzhjpi
+yqrzhtfgvjb
+lqvyazjfgthb
+gjfxqthbvyz
+jgfqvwhbtyz
+
+jhuowzkxgstcnbyq
+htysaujqgkclo
+ktfqrdgjmouhscy
+
+kimtregswnypvu
+nsoyitkvruemzpg
+yratnqxlbcsemupvikg
+
+judvlfpecmsxi
+xmpfieudscjlv
+scmjqxvleidpfub
+
+wqvoneuitzr
+zlteuhqavy
+
+xotuz
+goqltamcdef
+xtoizk
+ptuzoxk
+
+p
+p
+p
+
+fxhby
+ydgfhxb
+fybhxn
+
+d
+qv
+v
+q
+
+zawnqofbksptryj
+xwgipzmyqjof
+yeuczpqwjovf
+jwhzgfiopvylqd
+
+t
+li
+etp
+fk
+
+gzeohsylc
+lohzgmscde
+zlsceohg
+zslviqhpgoktce
+chszlego
+
+ruasnjhdiqblztmvo
+zbtijaqlsmovudnhr
+aslvqrhzoumibdjtn
+zcduiljrqathvsnbom
+
+lskfv
+jakilm
+kuzvl
+glk
+pldkbz
+
+ry
+yr
+uyr
+ruy
+yalmr
+
+woucsdbi
+egih
+il
+
+l
+l
+
+wyvuhx
+uiwhrvtfc
+bvumjskhp
+
+sbpxnj
+tdsqnbp
+prbdns
+
+cra
+arc
+arc
+acr
+arc
+
+vqtnukshxi
+kvtsxqouin
+adumetiqlnfvyxszk
+cisvtnqkxu
+vkuhistnqxw
+
+h
+h
+
+ulgctkdybnvxfi
+mgxvdketciljfuy
+
+exgybw
+ywexgpb
+bxeyfgw
+
+eztovlmsaup
+cebifqkghta
+
+sfq
+gbeqzylm
+nfq
+cqfrdu
+jhxcstkq
+
+hf
+j
+o
+
+eiq
+klgeqi
+iorbehuq
+yqkei
+pqdzmnsei
+
+lgrbkhwcouvjfnixyesm
+weokinrmzulxycgjfbvdh
+croigxtavfelnmbyphkjwu
+
+gbensirwh
+zvsynlhdxt
+csnoh
+fkhinse
+
+m
+m
+m
+f
+m
+
+oxcpvbrtejnazyugsmhld
+oclnzdtbuvmayhpxjsgre
+
+cdboplzihxmkyurvnf
+rlbcypdizvmouhkxfn
+lvyporknxdmzchfibu
+
+zyadfuxcw
+fgrcuvyd
+whcfzyudvr
+mfodiypcn
+
+r
+v
+
+hngtvbcqifkorpjxdy
+rdcikbxnvoqhgtypjf
+
+owe
+sugrni
+
+bcsymxkqlouarnjw
+xbydgsecumowjqkarni
+
+zpdq
+pzqd
+pqdz
+
+szateilmjogfqwd
+nxmtvhprqckebsy
+
+bo
+ob
+ob
+
+stxpmnqrw
+qwrb
+wyckqra
+iqohvrwau
+qwjro
+
+ckxeijbaznflhs
+cxeibjzhfknval
+cknogiyabmzeltrhxj
+sihlbaxknjzevc
+
+mblwpq
+woqlmr
+
+lfrcjmsxvobdiew
+wyecojbfirlxmsu
+ilcfobwsrjemx
+weobjrsctlfpimx
+wmlxbfohcsjier
+
+qfxzgkpowvr
+hgkqfovzprxtj
+gqrdzxkfovp
+oiqrzyknxpfvg
+gfxownpkrvzq
+
+kwmrz
+dgflbsp
+
+ptaofh
+nidwcfyhrq
+xjbzmfsek
+
+vzbqmjefpl
+apnd
+pianxt
+
+nfs
+czvxksnfp
+snjfel
+yfns
+rsifun
+
+jlo
+oj
+oq
+tshgo
+
+dwk
+d
+jlpeaq
+
+ztdrfxapwqemhbjgl
+xvpdltabrwmfhjezgq
+rheadmqpwzxgbfjtl
+pfwzhgobeqcldxrajtm
+aebdphmzqwjltvfrgx
+
+wurotjnbxaf
+fejbnraxwout
+xwfjnauobtr
+bafjwtxroun
+anxrotfwjbu
+
+vkqurbpcgz
+bckiqgxuzv
+tvcfbuygqszk
+cjqkdzeunvbg
+mozcqkugbv
+
+wqibzohdtrscy
+krzshbyodit
+
+udzmxcjaoy
+vexdmczojsn
+mjikdzocx
+
+oehvq
+mvtih
+valghbrp
+
+sbpvc
+nspvxbu
+lhvfspga
+
+nmhwltzj
+rvjpgnmtwy
+mwftqcjsudln
+
+ine
+zvi
+aqid
+
+uterwc
+rgcwaut
+cuwrt
+
+fobjimhzdrnkcqxvtewplus
+zdmrpcoxnyftakvw
+czpnymdgwktrxfov
+
+if
+if
+
+osge
+soeg
+
+rembwzjsthdyp
+jklspmyhdwr
+pjwydmrhs
+jlshmkdwyrp
+mjhvrywdsp
+
+qe
+qe
+qe
+
+woupslhznkvamxtf
+pxzuwfktsrmolhan
+wfnmoxzapkthlsu
+
+vuldejio
+
+jvsnfir
+srnivf
+fijvsrn
+drngsivf
+rivmfns
+
+lixyarvdktcfm
+vdritfmaklzyc
+ftdlcvyakrmi
+djctirazoyklfvm
+cirmtlkgayvfdwsb
+
+nbemhyxcvirqst
+avsthfugrlbxnyp
+
+viujczrmalpobyg
+xdynbcwkqlsapt
+phfeaxbclty
+
+k
+k
+
+db
+db
+diub
+db
+
+roxmgyktevuzwiapcl
+lrbhzotuskmfqwxiygca
+rlmtdjwunikgzaxcoyp
+
+hnedufmowpabzqgrx
+oypgmhucivwlqdbnfzs
+
+n
+n
+
+vefdsucpmz
+pgudszcmf
+mpdsczuf
+
+xbmfsckevdqw
+wmsnjhucxfveo
+vsxrqewfmacdyz
+
+yltsmhinfzagkq
+yqrtgzfsna
+boxfptsndzaywqvec
+
+cphifemnb
+uzrpgfmi
+zuipm
+vtoiklmpawd
+
+jer
+iebsq
+e
+nev
+xvze
+
+fps
+uvaxtqyed
+zligh
+ls
+h
+
+qopx
+qjuc
+erp
+tzlkw
+p
+
+qnajuetlifsx
+ijtyasvqnflcu
+oqsajtunlif
+jtsuqpafiln
+
+gmxqut
+ugtmqx
+umgxqt
+
+yvx
+la
+wa
+c
+
+kbtvcise
+slckbjeu
+
+ywlgopadhnr
+nxadplcghsyor
+aphoekmrytlqdgnjzfu
+ghnbvwdoirpaly
+
+ohqdezpmxaubflrckijt
+ryfltxmdeiohbkzapjqc
+toqbmljahxkziecrfdp
+etkoziadbhxcljqmfrp
+
+k
+k
+ikf
+k
+k
+
+gvmwayp
+mwvygpa
+
+hvtskylb
+hbsklvouej
+sgawkhqvxb
+szhbukrv
+
+yhwtragivqpxlzbndkmj
+pxsambvjtguzrhwqkn
+
+cjro
+jorc
+rocj
+jrco
+
+fsmubzj
+petuvb
+gcreudnbvyah
+
+iqzayhlsk
+ceipwdt
+iotucebnmg
+ugin
+
+hybrokw
+ohajybdusrknm
+opbrhky
+hbkyor
+owrbyhkf
+
+hlrpjkasibvotfzc
+fszapriwlhkjbt
+ehiytfwlrzbsaopkx
+ugtkqlfrhbapsiz
+rpibkshazftl
+
+de
+mpqfbad
+dn
+d
+do
+
+vk
+ab
+
+fhrpmuzbtge
+bzgtmfrphue
+
+s
+n
+ibq
+nx
+n
+
+ctoswlfhi
+hilcwfo
+
+wsvbygutlocekfrhpainmq
+siafylmrcthgqknweoubpv
+thnmrpbslueykacwovgfiq
+cwrmbovkghynuptesaflqi
+
+yg
+g
+gn
+gj
+
+edybzonjwvslarh
+lohyjsazwrbndev
+jlwhaobvsendyrz
+dvmyblzsreoawnjh
+zbdaoewlynvhjrs
+
+cyosghnxq
+fgysuqh
+
+f
+jf
+f
+f
+f
+
+ldnrjthxsb
+galtyuvk
+qredhpxltn
+tqzle
+
+xumfygorzw
+orfwemyzu
+
+xdufmgykpweibv
+zfsbecjrlo
+bcontqezaf
+
+dxmvnbur
+rbdxpn
+xzbnerd
+rexdbnf
+bdgrxn
+
+od
+od
+od
+dof
+
+kqcyeaprbng
+aqyrcpnbgke
+raqcgenykbp
+
+rzgkt
+zrgwt
+wzgtr
+
+wxprjzo
+xwjzrno
+zwjrox
+
+oervlpn
+vrneplo
+vnlopre
+orepvnl
+
+q
+x
+n
+
+tuqdnyhrgjpow
+trqwydgjhnob
+
+v
+dtrhi
+
+itzclenwvxgofa
+tacxonglqfzev
+oltxcqfvgenaz
+
+pxczjs
+eyspbrqmgnachjwz
+zpjcs
+pcszjf
+
+yzehqlju
+qazyjeh
+jhyelqz
+qheuzpjyl
+yjhqufze
+
+ulogsdtwjxzebqhrv
+mnwjqtygekpvzcrshx
+hrszodvjtgfaxiqwe
+
+v
+v
+v
+d
+v
+
+wovfgzedlprshi
+hrwczvgdbjsflp
+pubsfhdrlgwzv
+dpuwgfljbzrhvs
+
+dyvnrckgfptjq
+rqypcngjfvdt
+yfpvjrgdtqnc
+prajyqixvfgdntc
+
+oevkslpmg
+mklogvpse
+vpgmelsaok
+pgkemoslv
+
+xloamig
+oyspcw
+
+r
+r
+
+emapoiz
+oipvay
+lpoiamr
+kpqioawcj
+
+vzyajwmxr
+xzjrmwyav
+xmzawvjry
+yjwxazmtvr
+rayvjmzxw
+
+mztiueobdnxgaphyvcw
+izpygmwohdxavcnteub
+alhguximyopbvzcwdten
+xmuiowzhtnybcgdevpa
+gpyoamxwvntdhizubec
+
+dgemfwpbhx
+mdpbwghfe
+
+doygn
+ijelndwstyx
+zndy
+yavdnb
+yhdpnru
+
+bdgxmouscjrapntfwhv
+nbxpvtcgduhwarosjfm
+gxpohnwsbfrcvudajmt
+obgncjswtmdxrvpufha
+jahxdbsowrfugmptvycn
+
+tfroqyxvhalpmnwikgceujzds
+zneqjkaouymtflbhxwvgdcrpsi
+
+dceaqbymfwghlu
+adwvlhfuboscq
+
+xhytcalegbj
+bctlyjaehgx
+cyhebtalgjx
+xcjatelgbyh
+
+a
+a
+a
+a
+a
+
+etpaxisdgjcv
+slcjptaxei
+tcaexsjip
+seaicpmtjx
+cijxetaskp
+
+zlviyntwugpehsodqxrkjf
+dwlgzvqrpkhtxienofyuas
+
+gwsdzuqblo
+nzbukjormq
+
+dhzrxkiuwsjpoe
+wipjhexodzsqg
+
+xgsnpbru
+ymjefkwtoch
+
+cmeuzwy
+nvuxpge
+vufe
+euvo
+uperh
+
+iorcwltxf
+kxtwmoelicfvrzs
+fxiwthclropy
+jwocrlxtfi
+lcotrwiafpx
+
+jagkobv
+gkvjoa
+jkovga
+ovjakg
+jvgaok
+
+nfpw
+pfw
+ufwekp
+wpf
+fkpw
+
+keyaoqtnrphscvdium
+koaltpsnyvduqiemchr
+ohvtpcqnryadsumike
+hktqdrpouenmavsciy
+vpoaytsdniukrecqmh
+
+aplyqgbwmncv
+nvlymawpqgb
+plqamnwbgyv
+qlvnwgmpyabk
+
+xjufrsocmtwhpbydla
+jbmsraepztdlohwyg
+
+tomepxlzhqys
+izjweludg
+
+wjnucbyh
+wrhtjba
+
+beo
+eob
+
+ogh
+o
+o
+w
+n
+
+nvktbizad
+aznbitkv
+bkitvnza
+bvzktnia
+
+egpmwljvihcbyzadfnstuqk
+tldpeuzmkasbwfqcvgihnjy
+
+hedipbqx
+qidxnehbp
+
+mybzduikxoateg
+sedgkxuyamzob
+
+wfxavlrjkuget
+swbuvgrknjzhtxaof
+wirkjcauvtfmxglq
+rftuwkavjxg
+vjuwtkragfx
+
+bldmfpqhusyne
+bwuqypfemlnd
+
+jvunyoaidcgxefqwkt
+xcwaifevyukhodgtj
+
+zoujxb
+rfpa
+ckaldi
+rf
+hwfkpdtg
+
+h
+i
+z
+h
+
+s
+s
+s
+s
+
+njutezqbdwgpfiy
+uyjftzgbqwnepdis
+kgvuadiqtofelwjpn
+twduengxjfbipq
+
+zsjmefltkburc
+ukjbfrczelsmt
+kcztrlfumjesb
+zblmsjckfeutr
+
+npkodqwvtxgac
+gkwqopca
+
+wzgdpjsf
+zwpfdgsvj
+wdgpjfz
+zdngwefjph
+zjfdgpvw
+
+nvbhkirdcm
+ibzhrkpvcd
+cbrshkidv
+
+hpwojaulv
+zvfcgwrt
+qwvjp
+
+kl
+kl
+kl
+
+lnrbwmokfueitzhvjaqpyx
+pqstxiwcblamrvgejduhyf
+
+jefsoqvd
+eoqdjv
+
+pekavcn
+qnkjsv
+vfcnk
+
+zjpuc
+cujz
+jpuczw
+jzckut
+pcujz
+
+tqokmfejs
+esqtbknfoj
+efsjackiqouyptr
+kfjsnotqe
+qskoxwtjef
+
+aplrzmhxiqo
+lqmaxkzjhrp
+nrtxhzwmalqf
+yaqmhipzlxor
+
+bnzktvymfcaro
+vnafroctzkbme
+vcofajnsrzkbmt
+zrfcasmovkbnt
+
+yb
+by
+by
+by
+yb
+
+logkfchiyaxqdsnerbvzpwm
+sinqyxclrhmaowbkfgzpevd
+
+gsapdetyjzlunibq
+qigaysnvezutbpd
+
+vdlogcsubnymtfphz
+ptmgledsubyhoznfvc
+ysvozlcbpmhgnftdu
+shltgcmvpfuodbnzy
+
+cudipzhqbmnavfrylg
+qycingdprmuvhlbzfa
+cdigzluybqfvmrahpn
+
+phxsu
+pxsuh
+sxuhp
+suhpx
+
+qlcbjf
+cbfq
+
+rucvsliybgw
+gskrpiynwmvu
+rnviywugs
+ewuqvsygri
+
+dcabkeriuny
+wfhekngytda
+dywnvthake
+
+hqtw
+qtwh
+hdokqtw
+ctqwh
+
+i
+i
+i
+i
+
+wacn
+dwhsacq
+cmwag
+achw
+aczfvoelw
+
+symvinbtxzdlpkewf
+pktswynodvlefixbm
+kbsgwldtxfipvmyen
+kfvpmeiodxntslbyw
+
+ezgldaqovjpiryfmshunwcb
+cbvajqlyrwmseduifpnzogh
+hfzvbroeaqpgidjscywnlum
+wjdqyupmnbrhefgocilazsv
+hrjqcduioalpngbwfzveysm
+
+xmnvtpeihbrgqlyfauojkdcz
+frlokumghqznaiectxpdvjyb
+
+ylkrmhsw
+gmslrka
+cmrzbksx
+
+hefrbqnyswzigo
+rhvobqiwys
+
+rb
+lrb
+mrb
+
+kcrnqy
+mqlxejyc
+
+zasctgqmdpnfhieokl
+gcaeiltmnpzshfkd
+ghltscmpfadkienz
+nsdemfhgpzklctia
diff --git a/2020/day06/main.go b/2020/day06/main.go
@@ -0,0 +1,64 @@
+package main
+
+import (
+ "bufio"
+ "fmt"
+ "os"
+)
+
+func readInput(filename string) (res [][]string) {
+ file, _ := os.Open(filename)
+ defer file.Close()
+
+ scanner := bufio.NewScanner(file)
+ group_ans := []string{}
+ for scanner.Scan() {
+ line := scanner.Text()
+ if line == "" {
+ res = append(res, group_ans)
+ group_ans = []string{}
+ } else {
+ group_ans = append(group_ans, line)
+ }
+ }
+ res = append(res, group_ans)
+ return
+}
+
+func main() {
+ input := readInput("./input.txt")
+ // 6457
+ fmt.Println(part1(input))
+ // 3260
+ fmt.Println(part2(input))
+}
+
+func part1(input [][]string) (yes_count int) {
+ for _, group_ans := range input {
+ answered_count := make(map[rune]int)
+ for _, person_ans := range group_ans {
+ for _, ans := range person_ans {
+ answered_count[ans] += 1
+ }
+ }
+ yes_count += len(answered_count)
+ }
+ return
+}
+
+func part2(input [][]string) (yes_count int) {
+ for _, group_ans := range input {
+ answered_count := make(map[rune]int)
+ for _, person_ans := range group_ans {
+ for _, ans := range person_ans {
+ answered_count[ans] += 1
+ }
+ }
+ for _, count := range answered_count {
+ if count == len(group_ans) {
+ yes_count += 1
+ }
+ }
+ }
+ return
+}