day 2
This commit is contained in:
parent
eb92bd8f4c
commit
5aef4b3dbb
|
@ -0,0 +1,31 @@
|
|||
#!/usr/bin/env python3
|
||||
|
||||
|
||||
from collections import defaultdict
|
||||
|
||||
|
||||
def main():
|
||||
twofers = 0
|
||||
threefers = 0
|
||||
with open("boxes.txt") as f:
|
||||
for line in f.readlines():
|
||||
letters = defaultdict(int)
|
||||
for letter in line.strip():
|
||||
letters[letter] += 1
|
||||
is_twofer = False
|
||||
is_threefer = False
|
||||
for k, v in letters.items():
|
||||
if v == 2:
|
||||
is_twofer = True
|
||||
if v == 3:
|
||||
is_threefer = True
|
||||
if is_twofer:
|
||||
twofers += 1
|
||||
if is_threefer:
|
||||
threefers += 1
|
||||
|
||||
print(twofers * threefers)
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
|
@ -0,0 +1,26 @@
|
|||
#!/usr/bin/env python3
|
||||
|
||||
|
||||
from itertools import combinations
|
||||
|
||||
|
||||
def main():
|
||||
with open("boxes.txt") as f:
|
||||
boxids = [l.strip() for l in f.readlines()]
|
||||
|
||||
for a, b in combinations(boxids, 2):
|
||||
diffs = 0
|
||||
for i, c in enumerate(a):
|
||||
if b[i] != c:
|
||||
diffs += 1
|
||||
if diffs == 1:
|
||||
common = []
|
||||
for i, c in enumerate(a):
|
||||
if b[i] == c:
|
||||
common.append(c)
|
||||
print(''.join(common))
|
||||
return
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
|
@ -0,0 +1,250 @@
|
|||
naosmkcwtdbfivxuphzweraljq
|
||||
nvssmicltdbfiyxuphzgeraljq
|
||||
nvosmkcwwdbfiyxuphzeeraljx
|
||||
nvosmkcqtdbfiyxupkzgeraljw
|
||||
qvosmkcwtdbhiyxuphzgeraljh
|
||||
nvocqkcktdbfiyxuphzgeraljq
|
||||
nvosmhcwtdbfiyxmphzgekaljq
|
||||
nvosmkcwtdbfuyxwpszgeraljq
|
||||
nvosmocwtcbfiyxupfzgeraljq
|
||||
nvosmkcwtdbfiyxubczgeraljv
|
||||
nvosmkswtdbfiyxuphzgeruejq
|
||||
nlosmkcwtqbfiyxuphzgyraljq
|
||||
nvosmkcwtdbficxuphzgwraljk
|
||||
nvosmkkwtdbfiyxxphzgeralcq
|
||||
vvosmkcetdbfiyxumhzgeraljq
|
||||
evosmkcdtdbfiyxuphkgeraljq
|
||||
nvosmkvwtdbkiyxuphzgeraejq
|
||||
nvoszkcwtdbfimxuphzgeraljb
|
||||
nvozmkcwtdbfiyxuphzgrrcljq
|
||||
nvosvacwtdbfiyxuphzgeralzq
|
||||
nvosmkcwgdofiyxuthzgeraljq
|
||||
nvosmkcwasbfiyxuphzgeradjq
|
||||
nvosmkcatobfiyxtphzgeraljq
|
||||
nvosmkewtdsfiyxuphzgekaljq
|
||||
tvormkcwtdbfiyxuphzieraljq
|
||||
nvosgkcwtdbfiyxuuhzgeraqjq
|
||||
nvosmkcwtdbqiwxuphzgeralvq
|
||||
nvosmkcwtybfiydcphzgeraljq
|
||||
nvosnkcwtdbfiyxuphzulraljq
|
||||
nvosmkcwtdbbiyuupnzgeraljq
|
||||
nvosmwcwtdbfiyxuphzneraojq
|
||||
nvohlkcwtdbftyxuphzgeraljq
|
||||
nvasmkcwbdbfiyiuphzgeraljq
|
||||
nvosmkujtdbfiyxuphzgeraljz
|
||||
nvosmgcstdbfiyxuphzgeraljd
|
||||
nvoswkcwtsbziyxuphzgeraljq
|
||||
nvosmmcwtdbfiyxupbzzeraljq
|
||||
nvosmkcwtdbfifxulhzgeralji
|
||||
nvolmkcwtdbmiyxuphzgeraljv
|
||||
lvnsmkcwtdbfiyxuphzzeraljq
|
||||
nvqsmkcwtdbfiyxuphageralfq
|
||||
nvosmkcwtdmfiyluphzgeralzq
|
||||
nvommvcwtdbfiyxupjzgeraljq
|
||||
naosmkcwtdbfsyxuphzgsraljq
|
||||
avosmkcwtdbfiyxuphzgebafjq
|
||||
ndozmkcwtdbfiyxuhhzgeraljq
|
||||
nvosmkcwtubfiyxuphooeraljq
|
||||
nvosmkcwtdbliyxuphzgmraljx
|
||||
nvosmkcuddbfimxuphzgeraljq
|
||||
wvosmkzwrdbfiyxuphzgeraljq
|
||||
nvosmkcqtdbfiyxupjzgeraijq
|
||||
nvosbkcwtdbfiyduphzgeruljq
|
||||
yzosmkcntdbfiyxuphzgeraljq
|
||||
nvolmkcwtdbfiyxuphugeralfq
|
||||
nvrsmkcwtdbjiyxuphzgejaljq
|
||||
nvgsmkcwtdbfiyxuphoglraljq
|
||||
nvosmkcwtdbfioxuphzgezalhq
|
||||
nvosjkcwtdbfipxuphzgekaljq
|
||||
nvosmkcwtabfiyxlpazgeraljq
|
||||
nvosmkfwtpnfiyxuphzgeraljq
|
||||
nvokmbcwtdbeiyxuphzgeraljq
|
||||
nvosmkcwtdbfiyxupmzgmlaljq
|
||||
nvosmkcwtdhfiykurhzgeraljq
|
||||
nvosmkcwwdbfiyxumhzgiraljq
|
||||
cvosmscwtdbfikxuphzgeraljq
|
||||
nvosmkcwtdnzirxuphzgeraljq
|
||||
nvosmscwtdbfiyxuuhbgeraljq
|
||||
nvosmkcwtdbfidxpphzgeraajq
|
||||
nvosmkcwtdbfiyxuqhzgurcljq
|
||||
nvosmkcwtekfiyxrphzgeraljq
|
||||
ntosmkcwtpqfiyxuphzgeraljq
|
||||
nvosmkcdtdbfhyxsphzgrraljq
|
||||
nvolmkkwtdbfiyxuphzgeralgq
|
||||
nvosmrcwtdbfiyxuphzgefkljq
|
||||
nvoxmkcwtdbfiysuphzeeraljq
|
||||
nvjsmkswtdbfiyxuphzqeraljq
|
||||
nvosmkcetdbfiyfuphdgeraljq
|
||||
nvosmkkwtpbfsyxuphzgeraljq
|
||||
nvosdgcwtdbfiyxupyzgeraljq
|
||||
nvosmkcwudbfiyzvphzgeraljq
|
||||
nvosmkcwtlbfiyxupkzgerzljq
|
||||
nvosmkcwtdbfiywuphyzeraljq
|
||||
nvocmkcwtdufiyxukhzgeraljq
|
||||
nvosmkcwtdqfiyxuphzgevaxjq
|
||||
nvosvkcwtdbgiyxuphzgeralzq
|
||||
nqosmkcwtdbfiyxuphzeeraljr
|
||||
nvosmkcetdbfiyxuphzgeroljo
|
||||
nvosmkcwtdvfiyxuphzceraliq
|
||||
nvosmkcwtnxfiyxuphzgyraljq
|
||||
nvosmkfwtdefiyxupxzgeraljq
|
||||
nvosmacwtdbfiyxuphzseragjq
|
||||
nvpsmkcwtdbfzyxuvhzgeraljq
|
||||
nvormkcwtdbfiyxuphzairaljq
|
||||
rvysmkcwtdbfmyxuphzgeraljq
|
||||
nvosmscwzdbfiyxuphzgerbljq
|
||||
nvosmkcwtdufmyxuphzqeraljq
|
||||
nvosmkcwtxbfiyxxphzgeralxq
|
||||
nvosmkcwtdbsiyxupsfgeraljq
|
||||
nvosmccwtdbfiqxuthzgeraljq
|
||||
nvosmtcwtqbuiyxuphzgeraljq
|
||||
nvosmkcwtdbfiysurbzgeraljq
|
||||
nvowmkcwtdbfiyxuywzgeraljq
|
||||
xvosmkcktdbfiyxuhhzgeraljq
|
||||
nvosmkgwsdbfiyxmphzgeraljq
|
||||
jvofmkcwtdbfiyxupyzgeraljq
|
||||
nvozakcwtdbfiexuphzgeraljq
|
||||
nvosmkcptdbfiyxuphzgepaljn
|
||||
nvosmkcwtdbpiyxuphzgeraxjw
|
||||
nvoszkcwtdbfiyjuphzeeraljq
|
||||
nvosmkcwtdbfiyxuppzoeraejq
|
||||
nvosmkiytdbfiyhuphzgeraljq
|
||||
nvosmkcwtdvfiywupyzgeraljq
|
||||
nvosmecwtdofiyxuphzgeralja
|
||||
nvosmkqwtdbfixxuphzgeraojq
|
||||
nvosmkwwtdbfiyxfpdzgeraljq
|
||||
nvosmkgwtdbfiyzupwzgeraljq
|
||||
nmosmucwtdvfiyxuphzgeraljq
|
||||
nvosmdcwtdbmiyxuphzveraljq
|
||||
wvosmkcwtpbfiyxuphzgetaljq
|
||||
nvosmmcwtdlfbyxuphzgeraljq
|
||||
nvosmkcwtabmiexuphzgeraljq
|
||||
nvosqpcwtdbfiyxuphzgqraljq
|
||||
nvosmecwjdbfiyxuphzgeraljk
|
||||
nyohmkcwtdbfiyxuphzgzraljq
|
||||
nlosmkcwtkbfiyxuphzgeraejq
|
||||
nvosmkcwrdbliyxuphzgerpljq
|
||||
nvusmkzwtdbfxyxuphzgeraljq
|
||||
nvosmkcwtdbfiyxuhizgerazjq
|
||||
nvosmkhptdbfbyxuphzgeraljq
|
||||
nvosmfcwtdbgiyxupdzgeraljq
|
||||
nvosmkmwtdbfiyxuphzgevalpq
|
||||
nvosmkcwtdwfiyxuphzherjljq
|
||||
nvosmkcwjwbfiyxuphzgeualjq
|
||||
nvosmkcwxdbflymuphzgeraljq
|
||||
nvosmkcwpdbriyxuphzoeraljq
|
||||
nvoshkcwcdbfiyxuphzgeravjq
|
||||
nvosmkcetcbfiyxgphzgeraljq
|
||||
nvosmkcwtdyfiyxuphzgerwqjq
|
||||
nuosmkcwedbfiyxurhzgeraljq
|
||||
nvosmkcwtdbfiixuphzctraljq
|
||||
nvoszkcwtdbfwyxuphzgerpljq
|
||||
nvormkcwtdbfiyxuphzgeralzn
|
||||
nvosmkyttdbfiywuphzgeraljq
|
||||
nvosmkcwtdbhiyxupazgeralhq
|
||||
nvotmkcwtdbfiyxuphzgevalbq
|
||||
nvosmkcwedbfiyxuphzguraljr
|
||||
nvssmkcwtdbfiyxushzgeralbq
|
||||
nvosmkcwtdeziyxuphzgeralhq
|
||||
nvogmkcwtdbfiyxuphzgerrxjq
|
||||
ncormkcwtdbfiyxuphzgeraloq
|
||||
nvosmkcwbdbfiyeuphzgerqljq
|
||||
nvosxkcwtdbfsyxupfzgeraljq
|
||||
nvohmkcwtdbfiyxuphzseraajq
|
||||
nvoscdcwtdbfiyxuphzgeralqq
|
||||
neosmkcwtdbfiyxuchzgeralgq
|
||||
njosmvcwpdbfiyxuphzgeraljq
|
||||
nvosmkcwtwbfiyxuphzgehamjq
|
||||
nvosmkcwtdbfiyxushzgejaljv
|
||||
nvosmkcwodbfiyxuphzgeryqjq
|
||||
nvoymqcwtdbfiyxuphzgeralbq
|
||||
nvosmkcwtdjfiyxuphzgesaljb
|
||||
nvjsmdcwedbfiyxuphzgeraljq
|
||||
nvosmkcwydbfiyxuihzmeraljq
|
||||
nvrsmkcwtdifiyxuphzgqraljq
|
||||
nposmkcwtdbfiyxiohzgeraljq
|
||||
dvosmkcwtdbfiyxuphzrvraljq
|
||||
pvosmkcwudbfsyxuphzgeraljq
|
||||
noosmkcwtdbfiyxuphtgexaljq
|
||||
nvosmkcwtdbfiaxuphyferaljq
|
||||
nvhsmlcwtdbfiyxuphzgeualjq
|
||||
nvosekcwtdbbiyxuphzgerabjq
|
||||
nvosvkcitdbfiyxuphzgerarjq
|
||||
nvotmkkwtdbfiyxuphzgeraljj
|
||||
nvosmecwtdbfiyxuphzgyralwq
|
||||
hvosmkcwtdbfiyxuphzysraljq
|
||||
nvosmkcvtdbfiyxlphzgeraljb
|
||||
nvosmkcwttbfiyxuphngtraljq
|
||||
nvoslkcwtdbfiyxuphzqeraljr
|
||||
nxosmkcwtdbfibxuphzgrraljq
|
||||
nvokmkhwtdbfiyxuphzgwraljq
|
||||
nvosmkfwtdbfiyxuphzgdraljo
|
||||
nvcsmkcwtdbfibxuphzgeraljl
|
||||
nvosmkcwtdcfiaxuphzeeraljq
|
||||
wvosmkcwtdbyiyxjphzgeraljq
|
||||
nyosmbcwtjbfiyxuphzgeraljq
|
||||
nvosmkcwtdbiiyxuahzieraljq
|
||||
nqosmkcwtdbfiyxuyhzgerapjq
|
||||
nvosmkcwtdbfiyxuwhzzetaljq
|
||||
nvosmkcwfgbfiyxuphzgerrljq
|
||||
nvosmbcwtdbfipxuphzderaljq
|
||||
nvosmkcwtdgfiyxupdzgerjljq
|
||||
noosmkcwtdcfiyxuphlgeraljq
|
||||
nvonmkcutdbfiyxuphzieraljq
|
||||
nvocmkcwtdbfiyyuphageraljq
|
||||
nvosmkcwtdbfoyxuphzneraqjq
|
||||
nvoskkcwtdbtiyxuphzgevaljq
|
||||
ocosmkswtdbfiyxuphzgeraljq
|
||||
nvosmkcqtdbfiyxfvhzgeraljq
|
||||
noosmkcwtdbfiyquphzberaljq
|
||||
nvosmkcwttbfijxuchzgeraljq
|
||||
nvogmkcwtdbfiyxupazgeralaq
|
||||
nvqsmkcwtdbfikxuphzgeraliq
|
||||
nvosmkuwtdbfiyxuphzjwraljq
|
||||
nyosmhcwtdbfiyxuphzgereljq
|
||||
nvosmncwtdbfietuphzgeraljq
|
||||
gvpsmkcwtdbfiyxuyhzgeraljq
|
||||
nvozmkewtlbfiyxuphzgeraljq
|
||||
nvostkcltpbfiyxuphzgeraljq
|
||||
nvosmkcwtdbdiyxuphzgehaljz
|
||||
nvosmkcwtjbziyxuphzgexaljq
|
||||
nvosmkcwtdbfiyptphzggraljq
|
||||
nvosmkcwtdbliyxupjzgebaljq
|
||||
nvosmkawtdbfiyxupxzgtraljq
|
||||
vvosmkcwtdbfiyxfphzperaljq
|
||||
nvosmkawtdbfiyxutczgeraljq
|
||||
nvosmkcbtdbuiyxrphzgeraljq
|
||||
nvbsmkcwtdbfiyxdphzgerasjq
|
||||
nvosnkcwqdsfiyxuphzgeraljq
|
||||
nvosmkcwtdbfiyxwphzgzzaljq
|
||||
nvosmkcwtdbffyquphzgeralcq
|
||||
nvosmkcwtzbfiyxdphzgzraljq
|
||||
nvysmkcwtdbfiycvphzgeraljq
|
||||
nvowmkcwtdbfiycuyhzgeraljq
|
||||
nvosbkcwtdbfiyiuphzgeraqjq
|
||||
nvosmecwtdbfiyxupqzmeraljq
|
||||
nvosmkcdtdbfhyxsphzgeraljq
|
||||
nmosmkcwtdbziyxuphzgercljq
|
||||
nvosmkcwtdbfiyxupfmgersljq
|
||||
nvosmkcvtdbpyyxuphzgeraljq
|
||||
nvosmkcwtkbfiyaupxzgeraljq
|
||||
nvosmkcwtzbiiyxuphzgerazjq
|
||||
nvoxmkcwtdbfiyxuphztegaljq
|
||||
nvonmkcwtdafiyxuphzgerkljq
|
||||
rvommkcwtdbfiyxzphzgeraljq
|
||||
nvosmkcwthbfiysuphzgeraxjq
|
||||
nvosmkcwtdbfnyxuphzgerccjq
|
||||
nrosmzcwtdbfiyxuphkgeraljq
|
||||
nvolmkcdtdbfiyxuphtgeraljq
|
||||
nvosfkcwtdbfiyeuphcgeraljq
|
||||
nvowmkcwtdbfhyxuphzgerafjq
|
||||
gvosmkcwtdbfiyxupbpgeraljq
|
||||
nvosmkcwtdbkiyxuphegebaljq
|
||||
nvommufwtdbfiyxuphzgeraljq
|
||||
uvksmkcwtdbfiysuphzgeraljq
|
||||
nvosmkcwevbfiyxuphtgeraljq
|
||||
nvosmkcmtdbfiycuphzgeraxjq
|
||||
nvcsxkcwtdbfiyxuphzgeraljn
|
||||
nvosmkcwtdbtiymuphzgeraltq
|
||||
nvosmfcwtdlfjyxuphzgeraljq
|
||||
svosmkcitdbfiyxuphzgsraljq
|
Loading…
Reference in New Issue