Day 02.
This commit is contained in:
parent
0f238f22a1
commit
ff27252c39
|
@ -30,4 +30,4 @@ import qualified Day24
|
||||||
import qualified Day25
|
import qualified Day25
|
||||||
|
|
||||||
main :: IO ()
|
main :: IO ()
|
||||||
main = Day01.main
|
main = Day02.main
|
||||||
|
|
|
@ -0,0 +1,250 @@
|
||||||
|
qcsnyvpigkxmrdawlfdefotxbh
|
||||||
|
qcsnyvligkymrdawljujfotxbh
|
||||||
|
qmsnyvpigkzmrnawzjuefotxbh
|
||||||
|
qosnyvpigkzmrnawljuefouxbh
|
||||||
|
qcsnhlpigkzmrtawljuefotxbh
|
||||||
|
qcsnyvpigkzmrdapljuyfotxih
|
||||||
|
qcsnbvpiokzmrdawljuerotxbh
|
||||||
|
qcfnyvmigkzmrdawljuefotdbh
|
||||||
|
qcsnynpigkzmrdawljuefptxbp
|
||||||
|
qcsgyapigkzmrdawljuafotxbh
|
||||||
|
qcsnyvpigkzmrdapljueeotibh
|
||||||
|
qcfnyvpigkzmndawljuwfotxbh
|
||||||
|
qzsayvpigkzmrdawijuefotxbh
|
||||||
|
qcsnsvpiekzmrdawljfefotxbh
|
||||||
|
ncsnyvpigkzmrdaaljuefotxzh
|
||||||
|
qssnyvpigkzmrdawljuefotobg
|
||||||
|
qcshyipigkzmrdajljuefotxbh
|
||||||
|
qcsnyvtigkzmrdawljgeaotxbh
|
||||||
|
qcsnkvpxgkzmrdawljuefltxbh
|
||||||
|
qcsnyvpiikzmrdawljuwfoqxbh
|
||||||
|
qcsnybpigwzmqdawljuefotxbh
|
||||||
|
qcsiyvpipkzbrdawljuefotxbh
|
||||||
|
qldnyvpigkzmrdzwljuefotxbh
|
||||||
|
qcsnyvpwgkzcrdawljuefmtxbh
|
||||||
|
qcsnyvnigkzmrdahmjuefotxbh
|
||||||
|
qcsnydpigkzmrdazljuefotxnh
|
||||||
|
qcsqyvavgkzmrdawljuefotxbh
|
||||||
|
ucsnyvpigkzmrdawljuefocxwh
|
||||||
|
qcsnivpigrzmrdawljuefouxbh
|
||||||
|
tcsnyvpibkzmrdawlkuefotxbh
|
||||||
|
qcstytpigkzmrdawsjuefotxbh
|
||||||
|
qcynyvpigkzmrdawlluefotjbh
|
||||||
|
qcstyvpigkqrrdawljuefotxbh
|
||||||
|
icsnyvpizkzmrcawljuefotxbh
|
||||||
|
qcsnyvpimkzmrdavljuezotxbh
|
||||||
|
qvsnoupigkzmrdawljuefotxbh
|
||||||
|
qcsnyvpigkzmrdawwjuefftxgh
|
||||||
|
qcpnyvpijkzmrdvwljuefotxbh
|
||||||
|
qcsnyvpigkzmxdakdjuefotxbh
|
||||||
|
jcsvyvpigkqmrdawljuefotxbh
|
||||||
|
qcwnyvpigczmrsawljuefotxbh
|
||||||
|
qcsnyvpdgkzmrdawljuefoixbm
|
||||||
|
qysnyvpigkzmrdmwljuefotxbp
|
||||||
|
qcsnavpigkzmrdaxajuefotxbh
|
||||||
|
qcsfkvpigkzmrdawlcuefotxbh
|
||||||
|
qcsnyvpigkvmrdawljcefotpbh
|
||||||
|
qcsnyvpiqkkmrdawlvuefotxbh
|
||||||
|
qhsnyvpigkzmrdawnjuedotxbh
|
||||||
|
qasnlvpigkzmrdawljuefotxkh
|
||||||
|
qgsnyvpigkzmrdabpjuefotxbh
|
||||||
|
jcsnyvdigkzmrmawljuefotxbh
|
||||||
|
qcsnivpigkzmrdawljuefonxth
|
||||||
|
qcsnyjpigkzmrdawljgefotxmh
|
||||||
|
qcstyvpigkzmrdacljuefovxbh
|
||||||
|
qcsnvvpigkzmrdawljuewotrbh
|
||||||
|
qcsnyvaigdzmrdawljueuotxbh
|
||||||
|
qcsnyvpegkzmwdawljzefotxbh
|
||||||
|
qcsnevpngkzmrdawlouefotxbh
|
||||||
|
qcsnuvpigozmrdawljuefotdbh
|
||||||
|
qgsnyvpigkzmqdayljuefotxbh
|
||||||
|
qcsnyvpigkzmrdcwdjuofotxbh
|
||||||
|
qcnnyvpigkzmrzawljuefstxbh
|
||||||
|
qlsgyvpigkzmrdtwljuefotxbh
|
||||||
|
qcsnyfpigkzlroawljuefotxbh
|
||||||
|
qcsnkvwigkzmrdowljuefotxbh
|
||||||
|
qcsnrvpigkzmrdawljuvfltxbh
|
||||||
|
qcsnyvpigkzvreawljuefotxmh
|
||||||
|
qcsrgvpigkzmrdawliuefotxbh
|
||||||
|
qysnyvpigkzmrdawlxaefotxbh
|
||||||
|
qcsnyvpigizmrdlwljuefotxbi
|
||||||
|
qzsnyvpitkzmrdawljuefbtxbh
|
||||||
|
qzgnyvpigkzmrdawljuefotxih
|
||||||
|
qcsnyvpigkzmrdawlguefvtxbb
|
||||||
|
qcsnyvpigkzmidawljuefouxjh
|
||||||
|
qksnyvpigkzmrdawlruefotxhh
|
||||||
|
qcsnyvpinkzmrdaaljuefotxah
|
||||||
|
qcsnxvpigkzjrdawljuefhtxbh
|
||||||
|
qcsnyvpigkzardawlgueuotxbh
|
||||||
|
qcsnyvpiakzmrdpwljuefotxbt
|
||||||
|
qcsnyvpigkzmrdawkjuefotxgb
|
||||||
|
qcsnyvpigkzmrdawljuehocsbh
|
||||||
|
qcsnsvpigktmrdawljuefotxvh
|
||||||
|
qusnrvpigkzrrdawljuefotxbh
|
||||||
|
qcsnyhiigkzmrdawrjuefotxbh
|
||||||
|
qcsnavpigkzmrdawlfuefotxbz
|
||||||
|
qcsnyvpigkzmmdamsjuefotxbh
|
||||||
|
qcsnyvzigkzmrdcwljmefotxbh
|
||||||
|
qcsnyvpigkzmriawljuefotbbe
|
||||||
|
qcsnyvpigksmrdawljaefotxbd
|
||||||
|
qcsnyvpigkzfrdawljuefoxxmh
|
||||||
|
qcsnyvpygkrmrdawljuefotxbi
|
||||||
|
qcsngvwigfzmrdawljuefotxbh
|
||||||
|
qcsnyvpigkmkrdauljuefotxbh
|
||||||
|
qcsnyvpigxzmrdgwljuefwtxbh
|
||||||
|
qconyapigkzmrdaxljuefotxbh
|
||||||
|
qcsnydpigkzwrdawljulfotxbh
|
||||||
|
qcsnyvpimkzmmdawljuefotxch
|
||||||
|
qcsnkspigkzmrdawgjuefotxbh
|
||||||
|
qcsnyvpigkzmrdhwljfefbtxbh
|
||||||
|
qcsnyipijkztrdawljuefotxbh
|
||||||
|
qcseyvpigkrhrdawljuefotxbh
|
||||||
|
qcsnyvpivkzmrdawljuefottbb
|
||||||
|
qcsnyvpigkzmrdawlouefcjxbh
|
||||||
|
qcsnyvpigkzmrgayljuefotxbm
|
||||||
|
qcsnyvpvgkzmrdawrjujfotxbh
|
||||||
|
qcsnyvpigkzmndawljuefqtxch
|
||||||
|
qcsnyvpigbzmrdawljuefotibg
|
||||||
|
qcsnyvpigkzmseawljuefotxbv
|
||||||
|
qcsnwvpigkzmraawnjuefotxbh
|
||||||
|
mcsnyvpiqkzmrdawljuefotlbh
|
||||||
|
bcsnyvpigczmrdmwljuefotxbh
|
||||||
|
qcsnyvpigkzmrtawljuegntxbh
|
||||||
|
qcsnyvpijkzmrdawlmrefotxbh
|
||||||
|
qdsnyvpfgkzmrdawljuekotxbh
|
||||||
|
qcsnyvpigkzmrdawcjfegotxbh
|
||||||
|
qcslyvphgkrmddawljuefotxbh
|
||||||
|
qcsnyvpigkzmsdawkjuefojxbh
|
||||||
|
qzsnyvpigkzmrzawljuefmtxbh
|
||||||
|
qcsnyvpqgkzmcdawljuefttxbh
|
||||||
|
qcsnyvpbgkpmrdawljuefoqxbh
|
||||||
|
qcsnyvpigkemrdywljmefotxbh
|
||||||
|
qcsnyypigkzmrdawljmefotxwh
|
||||||
|
jcsnyvhwgkzmrdawljuefotxbh
|
||||||
|
qcsnyvpigkzmrdawljurlotxwh
|
||||||
|
qcsnnvpigzzmrdawljuefotwbh
|
||||||
|
hcsnyvpigkzmrdarljuefitxbh
|
||||||
|
qcsnyvpilkzmrfawljuefotsbh
|
||||||
|
qcsnynpigkzmldawijuefotxbh
|
||||||
|
qcsnyvpkgkjmrdawljuefotxlh
|
||||||
|
qcsnylpigkzprdawljgefotxbh
|
||||||
|
qcsnyvpigkzmrrawljnefohxbh
|
||||||
|
qcsnivpigkzmrqawlbuefotxbh
|
||||||
|
qcsgyvpigkzmrfawljuefotbbh
|
||||||
|
qccuyvpigkzmrdawyjuefotxbh
|
||||||
|
gcsnyvpigkzjrdawljuefotxby
|
||||||
|
qcsmyvpiekzbrdawljuefotxbh
|
||||||
|
qcsnyvpzgkrmrdawljuefotxbs
|
||||||
|
qesnyvpigkzmpdqwljuefotxbh
|
||||||
|
qcsnyvpigqzmrdawljuefutibh
|
||||||
|
qcdnyvpigkzirdawljfefotxbh
|
||||||
|
qcsnyvpiukzmrcrwljuefotxbh
|
||||||
|
qcsnbvpickzmrdswljuefotxbh
|
||||||
|
qcsnyvpighzmrpadljuefotxbh
|
||||||
|
qccnyvpigkzmrdawljudxotxbh
|
||||||
|
qcsnyvpigkzmrdabljuesotxlh
|
||||||
|
qcsnyvpigkzmrrawlruefozxbh
|
||||||
|
qconyzpigkzmrdawljuefotjbh
|
||||||
|
qclnyvpigkzmrdxwljuefotbbh
|
||||||
|
qcsnygpigkzmrdawlhuefooxbh
|
||||||
|
qcsnyvpigkzmvdawljuefntxnh
|
||||||
|
qcskyvpigkzmreawljuefotubh
|
||||||
|
qrsnyvpxgkzmrdawljuefotxbz
|
||||||
|
qclnyvpigtamrdawljuefotxbh
|
||||||
|
qcsnyvpigkzmrdawojxefoyxbh
|
||||||
|
qcsnyvpinkzmrdakljuwfotxbh
|
||||||
|
qcsnyvpiykzmedawljuefgtxbh
|
||||||
|
qcsayvpigkcmrdawijuefotxbh
|
||||||
|
qcsnyvuiekzmrdamljuefotxbh
|
||||||
|
qcdnyvpigkzmrdawnjuefoxxbh
|
||||||
|
qcsnfvpwgszmrdawljuefotxbh
|
||||||
|
qcsnycpigkzmrdawljqefotxih
|
||||||
|
qcslyvphgkrmrdawljuefotxbh
|
||||||
|
ecsnyvpigkzmrdawykuefotxbh
|
||||||
|
qcsayvpigkzmraawljuekotxbh
|
||||||
|
qcsnyvpigkdmrdawljuewofxbh
|
||||||
|
qcznyvpigkzqrdawljuefotxnh
|
||||||
|
qcsnyvplgkzmrdawljiefotlbh
|
||||||
|
qcsnyvpigkzmroewljuefotbbh
|
||||||
|
qcvnyvpigkzvrdawujuefotxbh
|
||||||
|
qcanyypigkzmrdaeljuefotxbh
|
||||||
|
qcsnyvwigkzmrdewljuefotxqh
|
||||||
|
qcsryvpigkvmrdawljuefotabh
|
||||||
|
pcsnyvpigkwmrdawljueforxbh
|
||||||
|
qcsncvpigkzmrdawljuefotwmh
|
||||||
|
qcsnyvpigozmrdawljudfozxbh
|
||||||
|
qcsnynpigkzmrbawhjuefotxbh
|
||||||
|
qcsnyvuigkzmrqawljuefotxch
|
||||||
|
qcsnyvpickzmrdawljueeofxbh
|
||||||
|
qcsnyvpigkzgrdawljueiouxbh
|
||||||
|
qcsnyvpigkztrdawljuxnotxbh
|
||||||
|
qcsnyvpigwzvrdawljfefotxbh
|
||||||
|
qcsnyvpilkzmrdawljuefotxcz
|
||||||
|
qcsnjvpigkzmrdawljuefoywbh
|
||||||
|
qhsnyvpigyzmrdawljuhfotxbh
|
||||||
|
qcsnyvpirkzmfdawljuffotxbh
|
||||||
|
qcsjyvpigkzmvdawljuefotxzh
|
||||||
|
qcszivpirkzmrdawljuefotxbh
|
||||||
|
qwsnyvpigkzmtdawljuefetxbh
|
||||||
|
qcrntvpigkzordawljuefotxbh
|
||||||
|
qrsnyvpigkzmsdawljrefotxbh
|
||||||
|
qcsnyviivkzmrdazljuefotxbh
|
||||||
|
ecsnyvpigkzmrdawyjuefotxbw
|
||||||
|
qnsnyvpkgkzmrdawljueqotxbh
|
||||||
|
qcsyyppigkzmrdawljuefotxba
|
||||||
|
qcsnyvpigkzhrdpwljuefouxbh
|
||||||
|
ucsnyvpigkzmrdawojuefouxbh
|
||||||
|
qysnyvpigkzmrdawljukfotxbd
|
||||||
|
qcjnyvpigkzmrdalljfefotxbh
|
||||||
|
fcsnyapigkmmrdawljuefotxbh
|
||||||
|
qcnnkvpigkzmrdawljuefctxbh
|
||||||
|
ocsnyvpigkzmsdawljuefotxbl
|
||||||
|
qcsnyvpiakomrdawpjuefotxbh
|
||||||
|
qcsnyvpigkzmrdawljvefbtxwh
|
||||||
|
qcsnuvpigkzmvdfwljuefotxbh
|
||||||
|
qcsnyapihkzmrdagljuefotxbh
|
||||||
|
qzsnyvpigkzmrdawtjuefotxgh
|
||||||
|
qcsnyvpigkzmrdawljuefomyah
|
||||||
|
ocsnyvpigkzqrdawljuefotxbt
|
||||||
|
qnsnyvpigkzmrdawljvevotxbh
|
||||||
|
icsnyvpigkzmrdawljuefntxbt
|
||||||
|
qcsnyvpigkzdrdawljuefotbbm
|
||||||
|
scsnyvpigkzmrgawljuofotxbh
|
||||||
|
qcsnydpigkzmrdowljuefotkbh
|
||||||
|
qcsnyvtikkzmrdawljuefolxbh
|
||||||
|
qcsiyvpigkcmrddwljuefotxbh
|
||||||
|
qyrnyvpigkzmodawljuefotxbh
|
||||||
|
pcsndvpfgkzmrdawljuefotxbh
|
||||||
|
qcsnyvkigkhmriawljuefotxbh
|
||||||
|
qcsnyvpigkzmsdmwlkuefotxbh
|
||||||
|
dosnyvpigkzmrdawdjuefotxbh
|
||||||
|
qcnnnvpigkzmrdzwljuefotxbh
|
||||||
|
qcsnyvpivkumrdailjuefotxbh
|
||||||
|
qcsnyvpigkzmrdswljuzfotxbz
|
||||||
|
qcscynpigkzmrdawljuefotxbc
|
||||||
|
qeanyvpigkzmrdawijuefotxbh
|
||||||
|
qclnylpigkzmrdawljuefotxyh
|
||||||
|
qcsnyvpigkzmrdawljbefowxbp
|
||||||
|
qcsnyvpagkzmrdawljuefolebh
|
||||||
|
qxsiyvpigkzmrdawljuefotxgh
|
||||||
|
qcsnyvpigkynrdawljuefoqxbh
|
||||||
|
qcsnevpigkzmrdxwgjuefotxbh
|
||||||
|
qcsnyvpdgkzlrdawljeefotxbh
|
||||||
|
qcsnyvpigkzmrgawljxbfotxbh
|
||||||
|
ecsnyvpigkzmrdbwbjuefotxbh
|
||||||
|
qcsnyvpigkzmraawujuefocxbh
|
||||||
|
qcsnyvpihkzmrdawljuefouxbn
|
||||||
|
fgsqyvpigkzmrdawljuefotxbh
|
||||||
|
qcsnyvpigkmmrdawajuefotnbh
|
||||||
|
qcsnyvvigkzmrdahljudfotxbh
|
||||||
|
qcsnyvpixkzmrdqwljutfotxbh
|
||||||
|
ncsnyvpickzmrdawljuehotxbh
|
||||||
|
qcsnyvpizkzmrdawlpuefotxbp
|
||||||
|
wcsnyvfigkzmrdakljuefotxbh
|
||||||
|
qcsnyvpigkznrdhwljupfotxbh
|
||||||
|
jcsnyvpigkpmzdawljuefotxbh
|
||||||
|
qcsnyppigkkmrdawljujfotxbh
|
||||||
|
qcsnyvpigkumrdaeljuefodxbh
|
||||||
|
qcsnyvhigkzmrdrwljuefodxbh
|
||||||
|
qcsnyvpigkacrdawtjuefotxbh
|
||||||
|
qcsnyvpigkzmylawlquefotxbh
|
14
src/Day02.hs
14
src/Day02.hs
|
@ -1,6 +1,16 @@
|
||||||
module Day02 (main) where
|
module Day02 (main) where
|
||||||
|
|
||||||
|
import Data.List (group, sort, (\\), intersect)
|
||||||
|
|
||||||
|
part1 :: [String] -> Int
|
||||||
|
part1 strs = (length . filter (count 2) $ strs) * (length . filter (count 3) $ strs)
|
||||||
|
where count n = any (== n) . map length . group . sort
|
||||||
|
|
||||||
|
part2 :: [String] -> String
|
||||||
|
part2 strs = head [ls `intersect` rs | ls <- strs, rs <- strs, length (ls \\ rs) == 1]
|
||||||
|
|
||||||
main :: IO ()
|
main :: IO ()
|
||||||
main = do
|
main = do
|
||||||
input <- readFile "input/02.txt"
|
input <- lines <$> readFile "input/02.txt"
|
||||||
print input
|
print $ part1 input
|
||||||
|
putStrLn $ part2 input
|
Loading…
Reference in New Issue