Day 02.
This commit is contained in:
parent
0f238f22a1
commit
ff27252c39
|
@ -30,4 +30,4 @@ import qualified Day24
|
|||
import qualified Day25
|
||||
|
||||
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
|
||||
|
||||
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 = do
|
||||
input <- readFile "input/02.txt"
|
||||
print input
|
||||
input <- lines <$> readFile "input/02.txt"
|
||||
print $ part1 input
|
||||
putStrLn $ part2 input
|
Loading…
Reference in New Issue