Files
aocpy/2016/d5.py
2024-03-27 08:06:27 -04:00

31 lines
715 B
Python

from lib import *
import hashlib
second = True
data = open(0).read().strip()
if second:
p = [" " for _ in range(8)]
for i in range(10**12):
s = data + str(i)
h = hashlib.md5(s.encode()).hexdigest()
if h.startswith("0" * 5) and h[5] in "01234567":
index = int(h[5])
if p[index] == " ":
p[index] = h[6]
# print("\r" + "".join(p))
if not " " in p:
p = "".join(p)
break
else:
p = ""
for i in range(10**12):
s = data + str(i)
h = hashlib.md5(s.encode()).hexdigest()
if h.startswith("0" * 5):
p += h[5]
if len(p) == 8:
break
print(p)