My Advent of Code solutions in Python. kevinyap.ca/2019/12/going-fast-in-advent-of-code/
advent-of-code python
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

at main 29 lines 602 B view raw
1import fileinput 2from hashlib import md5 3 4door_id = fileinput.input()[0].strip() 5 6pass_1 = '' 7pass_2 = [None for _ in range(8)] 8 9i = 0 10 11while len(pass_1) < 8 or None in pass_2: 12 digest = md5(door_id + str(i)).hexdigest() 13 14 if digest.startswith('00000'): 15 # print "Hash found! %s (%08i)" % (digest, i) 16 17 if len(pass_1) < 8: 18 pass_1 += digest[5] 19 20 pos = int(digest[5], 16) 21 char = digest[6] 22 23 if pos < 8 and pass_2[pos] is None: 24 pass_2[pos] = char 25 26 i += 1 27 28print "Password 1 is: %s" % pass_1 29print "Password 2 is: %s" % ''.join(pass_2)