advent-of-code

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs

commit 71a83e6924c1c1b5d84713cf6f6054c551dd3b9b
parent 3b2f660fc17ec758e7c6ffe9ec770e0ce8e3fd33
Author: mpizzzle <michael.770211@gmail.com>
Date:   Sun,  2 Dec 2018 12:50:14 +0000

puzzle 2 baybee

Diffstat:
A2018/files/puzzle2.txt | 250+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
A2018/puzzle2.py | 27+++++++++++++++++++++++++++
2 files changed, 277 insertions(+), 0 deletions(-)

diff --git a/2018/files/puzzle2.txt b/2018/files/puzzle2.txt @@ -0,0 +1,250 @@ +fzostwblnqkhpuzxirnevmaycq +fzastwblgqkupujxirnevmaucd +fzostwbxgakhpujxirnevmayci +uzosmwblgqkhlujxirnevmaycd +bzostwblgqkhpujxirnenfaycd +fzostwblghkhpujxibneemaycd +fzostwblgrkkpujxirnevqaycd +fzostwblgqkhpkjxirqkvmaycd +fzostwblgqdxpujbirnevmaycd +fzostwblgykhfujxirfevmaycd +fzostwbvgskhpujxirnevmagcd +flostwblgokhpuixirnevmaycd +fzostwblgzkhppjxirnevxaycd +ftosuwblgqkhpujxirnevmeycd +fzostkblgqkzpujxirnrvmaycd +fuostwbugqkhnujxirnevmaycd +frostwblgqkhpujsirneamaycd +bzostwblgqkhpajxirnevmuycd +fzysttbluqkhpujxirnevmaycd +czostgblgqkhpujxirnevmgycd +fzostwbcgqkhpujxirnevmavcr +vzostwbdgqrhpujxirnevmaycd +fzostwblgxkhpujxirnekmdycd +fzostwblgdkspzjxirnevmaycd +fzoqtwblgquhpujxirnevkaycd +fzostwblgqjhfujxirnevmayzd +fyostwblgtkhpujxilnevmaycd +izostwblzqkhpupxirnevmaycd +fzoaurblgqkhpujxirnevmaycd +fzostjblgqkhpbjxirbevmaycd +fzostwblgqkhpujmirngvmayca +fxostwbhgqkhiujxirnevmaycd +fzostwblngkhpujxirnemmaycd +fzosgwblgqkhpujxirnlvqaycd +bpostwblgqkhxujxirnevmaycd +fzhstwblgqshpujxirnepmaycd +fzootwbegqkhwujxirnevmaycd +fzmstwblgqkhmujxirnevsaycd +fzostwolgqkhpujxirnevmaysp +foostwblgqohpujxirnevmayyd +fzostwblgqkhgujxgrnevqaycd +fzostwbltqkhjujxipnevmaycd +fsostwblgqkhfujxirnevmayck +fzostwmlgqkbpujxifnevmaycd +fdostwblgqkhsujxirnecmaycd +fzostwblgquhpejxiinevmaycd +fzoqtwblgqkhkujxirnevmaywd +fzostwblmqkmpujxirnyvmaycd +fzjstwblgqkhpuyxirneomaycd +fzortwblgqkhpzjxprnevmaycd +fzosnwulgqkhpujxirnevpaycd +fzostwbegqkvpujxirnevmaykd +fzostwylzqkypujxirnevmaycd +fioshwblgqehpujxirnevmaycd +fzostwbliqkhoujxirnesmaycd +fzostwblgqkhpujdirnelmqycd +fzmstwblgqkhpujxirnnvpaycd +fzostwbtgqkhcujxirnevmaycz +fzostwblgqkfpujeignevmaycd +fzostwbegqkhpuvxirndvmaycd +fzostwblgqkcpujxmrnevmaycp +fvostwblgqkhpyjxirnevmaycx +fzostwblgqkhpufxirnevmzacd +fzisjwblglkhpujxirnevmaycd +fzosowbliqkhgujxirnevmaycd +fzostwblgqkhpujxirnyvmaywl +fzostwbllqnzpujxirnevmaycd +fzostwblgquhpujxirneomayci +fzostwblgqjepujximnevmaycd +fzostwblgqrhbujxijnevmaycd +fzostoblgqkhpujxirnevmoynd +fzortwblgqkhpujxixnevjaycd +fzostwhlgqkapujxirnevmaych +fzostwblgakhpujxirnevfayct +faostwblgqohpljxirnevmaycd +fzostwbhgqkhpujxirnyvcaycd +fjostwblgqkhpwjxirnevjaycd +fzostwblgqklpuixirnevmayxd +fzostwblgqkhhujxirncvmayce +fzostwblzqkhpzjxkrnevmaycd +fzostwblqqkbpujxirnevmcycd +ffostwblxqkhpujxirnevmayxd +fzostwblgqkhpbuxirnefmaycd +szostiblgqkhpujxirnevoaycd +fhlstwblgqkhpujxirnevmaycb +fzostwblgwfhpujxirnevmayed +fyostwblgqkhzujxirnevmayjd +fzostwblgqkvrujxirnevmaucd +fzestwblghkhpujxirnevmaycq +foostwbkgqkhhujxirnevmaycd +fpxstwblgqkhpujxirzevmaycd +fsostwtlgqmhpujxirnevmaycd +feostwelgqkhpumxirnevmaycd +fzostwbvgqkhpujkirnevmayce +fzmsewblgqahpujxirnevmaycd +fzsstsblgkkhpujxirnevmaycd +fzostwblgqkhxajxirneumaycd +fzostwblmqkhpujyisnevmaycd +gzostwblgqkhphjxirnevmavcd +fzostwblgckgpujxirnzvmaycd +qzostdblgqkhpujxirnevmaywd +fzoshwblgskhpufxirnevmaycd +fzosdwblgqkhpujkirnevjaycd +fzvstwblgqkhpuixdrnevmaycd +szostwblgqxhpujeirnevmaycd +fzosvwblgtkhpujxirnevmoycd +fzoscwblgqkkpujxirnevmvycd +fzostsblgqnlpujxirnevmaycd +fzostwblgmkhpujxlrnevjaycd +fzosnwblgqklpugxirnevmaycd +fcostwblgqpmpujxirnevmaycd +ozostwblgbkhpujxirnevmafcd +fzostwbagqkhiujxirneemaycd +fzosxwblgqkhpumxirneymaycd +fpostkblgqkhpujxianevmaycd +fzostwblgvkhhujxirnevmaycl +fzobtwtlgqkhpuwxirnevmaycd +fzostwvwgqkhpujxirtevmaycd +xzostwglgqkhpujtirnevmaycd +fzostwblgvkhtujxirnzvmaycd +jzostwblgqkhpujxirrevmvycd +pzostwbagqkhpujxirnevjaycd +fzostwclgqkhpujxirnhvmeycd +fzostwblglkhpujxirnevmayrf +fzoskwblnqkhpujxirnevmaysd +fzostbblgqkhpujxirnevmjycw +fzostwblggobpujxirnevmaycd +fzostwblgckhpijxirnevmayxd +fiostwrlgqkhpujxirnevmayck +frfstwblvqkhpujxirnevmaycd +fzowvwblgqkhpujsirnevmaycd +fzostwblgquhgujxirnevmiycd +fzoztwblgqkhpujxvrnevmaycj +fzostnbtgqkhpujxixnevmaycd +fzfstwblgjkrpujxirnevmaycd +fzostwblpqkhpdrxirnevmaycd +fivstwblgqkhpuixdrnevmaycd +fzostwbpgqkhpdjxirnewmaycd +fzostwblgqkhpdjxsrngvmaycd +fzostwblsqkhpujxisnxvmaycd +fcosvwblgqkhpujxirnevmavcd +fzostwrlgekhgujxirnevmaycd +fzostwblgqkhpujxindeimaycd +uzostwblgqshpujxirnevmwycd +fzostwzliqkhpujxirnevmaycu +zzostwbtgqkhpijxirnevmaycd +fzoltwblgqkhpujxinncvmaycd +fzostwblgqkzpujxprnevmayhd +fqostwblgqkhpujrirnevmzycd +jzostwblgqkhpuzxkrnevmaycd +fzostwblgqkhpuwxirszvmaycd +fzostwblgqkhpxjxilnevdaycd +fpmstwblgqkhpujxirnwvmaycd +fzoejwblqqkhpujxirnevmaycd +fzostwblgkshzujxirnevmaycd +fzoatqblgqxhpujxirnevmaycd +fzostwblgpkhpujiipnevmaycd +fzostwblgqghpujgbrnevmaycd +izosowblgqkhpujxirnejmaycd +fzostwblgqthpujxjrnevmalcd +fzovtwbcgqkhpujxicnevmaycd +fzoatwblgqkhpujxidntvmaycd +kzpstwblgqihpujxirnevmaycd +fzosawnlgqkhpujxibnevmaycd +fzostwblgqkhpujxarnevdajcd +bzostwblgqkhpujxvrnevmrycd +fzostwblgqkhpwfxirnevmazcd +fzostwblgqknpujyiqnevmaycd +zzostwblgqkhpujyirneqmaycd +flosiwblgqihpujxirnevmaycd +fzoetwblgqkhxujxirnevmeycd +fznstwbugqkhpujxibnevmaycd +fzbstwblgqkhpudxitnevmaycd +fzostwblgqkhkujxirnexaaycd +fzohthblgqkhpujxiknevmaycd +fzostwblgqkhpujxirnevvayjt +fzostwblggkhpujxirnrvqaycd +fzostwblgqslpujxirnevmaysd +aoostwblgqkhpnjxirnevmaycd +fzostwblgqkhlutxirnevuaycd +fxostwbugqkhpujxirnexmaycd +fzoftwblgqkhpsjxirnevmaywd +fzbstwblgqkhndjxirnevmaycd +fzostwblgqkhpxjxipnlvmaycd +fzostwbloqkhowjxirnevmaycd +fzostwblgqkcpdjxirnevnaycd +vzostiblgqkhpsjxirnevmaycd +fzostwblgqkhazjxirnevmaycg +fzostaklgqkhpujxirnevmaypd +fzostwblgkkhppjxirnevpaycd +izostwblgqkhpujairhevmaycd +fzostwdlgqkhpuqxzrnevmaycd +fzostwblgqkepujxernevmayct +fzostdblgqkhpujxyrnehmaycd +fzostwblgqkhsujxirnenfaycd +fzostwblgqkhpujxifnevmajld +fzostwblgokhpujxirxemmaycd +fzastwblcqkhpujxiruevmaycd +fzostwsxgqkhpuexirnevmaycd +xzosxwblgqkhpujxirnetmaycd +fzostwblgqkhpuexirnevmkccd +fzostwblgqklpujxirnermfycd +fzoetwblgqkhpujxirnehhaycd +ffostwblgvkhpujxirnevmazcd +fcosywblgqkhpujxirnevmaycy +fzmstwblgqkhpujxdrnevmaycl +fpostwblgqahpujxirnqvmaycd +fzostwbmgqkhpulxornevmaycd +fzostwblgqkopujxqrnevmrycd +fzostwblgqkhpujxisnevmjgcd +fzogtwulfqkhpujxirnevmaycd +fzostwalgqkhpcjxirnevmayud +fzosxwblgqkhpujxirnevmasmd +fzostwblgrkowujxirnevmaycd +fzostsblgqkhpujxirnevmsccd +fzostwblgqkhpujxfrnnvmaocd +fzostwblgqkhpujxiynsvkaycd +fzosowblgqkhpwjxirnevmaecd +fzosgwblgfkhpujxyrnevmaycd +fzostsblgzkhpujmirnevmaycd +fzostwblrqkhyuixirnevmaycd +qzostwblgqkhpujxyrnevmvycd +lzostwblgqkhpujxirqevmaymd +fzostwblgqkbpujxirnefbaycd +fzostwblgmihpujxirnevmafcd +fzostmblgqkhpujxirnevmpynd +fzoltwblgqkhpujlihnevmaycd +fzostwblgqkhpujdirneviyycd +fzgspwblgqkhpqjxirnevmaycd +fzostwblgqkhtujkirnevmayld +fjostwblgqkhpagxirnevmaycd +fzpsthblgqkhpuzxirnevmaycd +fzostwblgqkhpuhxzrneymaycd +fzoftwblgqkepujxirnevcaycd +fzostwblgqkbpyjxipnevmaycd +fzostwqlgqkhpujxirjevmayad +fzoxtwblgqkypupxirnevmaycd +fzostwblgqwhpuoxiynevmaycd +fzostwblgqkhpfjkirnevmavcd +fzoqtwblgqkhpujxirnermaycp +fzostwbngxkhpujxirnevmayqd +fzostwqogqkhpcjxirnevmaycd +fzostwblyqkhpujxvrnevmayzd +vzostwblgqkhpujxirnevmlzcd +fzostwblaqkhpujxirnevbajcd +fdostwblgqkhpujxzrnevmayod +fzostxbloqkhpujxirnevmcycd +fzostwbcgqkhpyjxirnegmaycd +fzostwblgqkhpuyxirnzrmaycd +fzustwycgqkhpujxirnevmaycd diff --git a/2018/puzzle2.py b/2018/puzzle2.py @@ -0,0 +1,26 @@ +file = [s[0:len(s) - 1] for s in open('files/puzzle2.txt').readlines()] +two_count = 0 +three_count = 0 + +for i, s in enumerate(file): + letter_table = [0 for idx in range(26)] + two_count_inc = 0 + three_count_inc = 0 + + for c in s: + letter_table[ord(c) - ord('a')] += 1 + + for l in letter_table: + if l == 2: + two_count_inc = 1 + if l == 3: + three_count_inc = 1 + + two_count += two_count_inc + three_count += three_count_inc + + for ss in file[0: i]: + if sum([a != b for a, b in zip(s, ss)]) == 1: + print ''.join([a if a == b else '' for a, b in zip(s, ss)]) + +print two_count * three_count+ \ No newline at end of file