f = open("input"); #f = open("testinput"); ''' test1 = ord("a") - ord("A"); test2 = ord("b") - ord("B"); test3 = ord("c") - ord("C"); print(test1, " ",test2, " ",test3, " ") ''' cdiff = 32; def polymer_d(a,b): return (cdiff == abs(ord(a) - ord(b))); myinput = f.read(); print(myinput); print(len(myinput)); is_poly = True; ''' while is_poly: is_poly = False; for x in range(1,len(myinput)): x1 = myinput[x-1]; x2 = myinput[x]; if polymer_d(x1,x2): #print((x1+x2)); #myinput = myinput.replace((x1+x2),""); myinput = myinput[ is_poly = True; break; #is_poly = False; ''' while is_poly: is_poly = False; sub = ""; for x in range(2,len(myinput)): x1 = myinput[x-2]; x2 = myinput[x-1]; if polymer_d(x1,x2): myinput = sub + myinput[x:]; is_poly = True; break; else: sub += x1; #print(myinput); print(len(myinput)); print(myinput); myinput.rstrip("\n"); print("part 1", len(myinput) -1); #9687 too high #minus 1 helped lol, not sure why