mirror of
https://github.com/bvanroll/advent-of-code-2020.git
synced 2025-08-28 19:42:42 +00:00
lil late, because i was braindead yesterday. Code was correct, however
i had to better interpret my output. which would lead me to make a better print statement of the output
This commit is contained in:
@@ -19,6 +19,7 @@ for line in lines:
|
|||||||
row = b >> 3
|
row = b >> 3
|
||||||
col = b & int("0000000111", 2) # idk if you can do this with bitshifting too, this felt kinda cheap
|
col = b & int("0000000111", 2) # idk if you can do this with bitshifting too, this felt kinda cheap
|
||||||
score = row * 8 + col
|
score = row * 8 + col
|
||||||
|
print(score)
|
||||||
if score > lastScore:
|
if score > lastScore:
|
||||||
lastScore = score
|
lastScore = score
|
||||||
|
|
||||||
|
51
05/task2.py
Normal file
51
05/task2.py
Normal file
@@ -0,0 +1,51 @@
|
|||||||
|
# doing python again because i want to :^)
|
||||||
|
# i dont know why some others show up. it's something to do with binary i just dont understand
|
||||||
|
#
|
||||||
|
#
|
||||||
|
lines = open("input.txt").read().split("\n")
|
||||||
|
|
||||||
|
|
||||||
|
#i will use this if i ever need it, for now it's faster to not use it
|
||||||
|
#scores = []
|
||||||
|
|
||||||
|
lastScore = 0
|
||||||
|
|
||||||
|
|
||||||
|
# its binary, time to understand bitshifting
|
||||||
|
l = {}
|
||||||
|
|
||||||
|
|
||||||
|
for line in lines:
|
||||||
|
if len(line) > 3: #idk i picked 3 just cuz, sometimes python just has empty string after split
|
||||||
|
b = int(line.lower().replace("f", "0").replace("b","1").replace("l","0").replace("r","1"), 2)
|
||||||
|
if "{0:b}".format(b)[:7] == "0000000" or "{0:b}".format(b)[:7] == "1111111":
|
||||||
|
#print("{0:b}".format(b))
|
||||||
|
print("first-line")
|
||||||
|
else:
|
||||||
|
row = b >> 3
|
||||||
|
col = b & int("0000000111",2)
|
||||||
|
score = row * 8 + col
|
||||||
|
l[score] = {"line": line, "row": row, "col":col, "score":score}
|
||||||
|
#print("{0:b}".format(b))
|
||||||
|
# row = b >> 3
|
||||||
|
# col = b & int("0000000111", 2) # idk if you can do this with bitshifting too, this felt kinda cheap
|
||||||
|
# score = row * 8 + col
|
||||||
|
# print(score)
|
||||||
|
# if score > lastScore:
|
||||||
|
# lastScore = score
|
||||||
|
|
||||||
|
#print(l.keys())
|
||||||
|
lastk = l.keys()[0]
|
||||||
|
print(lastk)
|
||||||
|
for k in l.keys():
|
||||||
|
#print("started loop for " + str(k))
|
||||||
|
if k == lastk:
|
||||||
|
continue
|
||||||
|
elif k -1 == lastk:
|
||||||
|
lastk = k
|
||||||
|
else:
|
||||||
|
print(k)
|
||||||
|
print(lastk)
|
||||||
|
print(l[k])
|
||||||
|
print(l[lastk])
|
||||||
|
lastk = k
|
Reference in New Issue
Block a user