This commit is contained in:
parent
26313578e3
commit
327c6a1394
10 changed files with 16 additions and 34 deletions
4
12/12.py
4
12/12.py
|
@ -1,7 +1,5 @@
|
||||||
#!/usr/bin/env python
|
#!/usr/bin/env python
|
||||||
# 2021 - Advent Of Code - 11
|
# 2021 - Advent Of Code - 12
|
||||||
|
|
||||||
GRID_SIZE = 10
|
|
||||||
|
|
||||||
|
|
||||||
def parse_file(file):
|
def parse_file(file):
|
||||||
|
|
|
@ -1,7 +1,5 @@
|
||||||
#!/usr/bin/env python
|
#!/usr/bin/env python
|
||||||
# 2021 - Advent Of Code - 11
|
# 2021 - Advent Of Code - 12 part 2
|
||||||
|
|
||||||
GRID_SIZE = 10
|
|
||||||
|
|
||||||
|
|
||||||
def parse_file(file):
|
def parse_file(file):
|
||||||
|
|
8
3/3_2.py
8
3/3_2.py
|
@ -33,10 +33,12 @@ def freq_bits(buf, mode):
|
||||||
|
|
||||||
if mode == MOST:
|
if mode == MOST:
|
||||||
return oxy
|
return oxy
|
||||||
elif mode == LEAST:
|
if mode == LEAST:
|
||||||
co2_freq = [0 if x == 1 else 1 for x in oxy]
|
co2_freq = [0 if x == 1 else 1 for x in oxy]
|
||||||
return co2_freq
|
return co2_freq
|
||||||
|
|
||||||
|
return None
|
||||||
|
|
||||||
|
|
||||||
def filter_pos(line_buffer, position, value):
|
def filter_pos(line_buffer, position, value):
|
||||||
for line in line_buffer:
|
for line in line_buffer:
|
||||||
|
@ -57,8 +59,8 @@ def filter_freq(buffer, freq_buf, mode):
|
||||||
|
|
||||||
line_buf = []
|
line_buf = []
|
||||||
with open('input.txt') as f:
|
with open('input.txt') as f:
|
||||||
for line in f:
|
for input_line in f:
|
||||||
line_buf.append(line)
|
line_buf.append(input_line)
|
||||||
|
|
||||||
gamma_count = freq_bits(line_buf, MOST)
|
gamma_count = freq_bits(line_buf, MOST)
|
||||||
gamma_bin = "".join([str(x) for x in gamma_count])
|
gamma_bin = "".join([str(x) for x in gamma_count])
|
||||||
|
|
2
4/4.py
2
4/4.py
|
@ -85,6 +85,8 @@ def play_until_win(boards_list, draws):
|
||||||
board.print_with_mark()
|
board.print_with_mark()
|
||||||
return board, d
|
return board, d
|
||||||
|
|
||||||
|
return None, None
|
||||||
|
|
||||||
|
|
||||||
boards, calls = parse_file('input.txt')
|
boards, calls = parse_file('input.txt')
|
||||||
print(f'number of boards: {len(boards)}')
|
print(f'number of boards: {len(boards)}')
|
||||||
|
|
11
4/4_2.py
11
4/4_2.py
|
@ -75,17 +75,6 @@ def parse_file(file):
|
||||||
return boards_list, numbers
|
return boards_list, numbers
|
||||||
|
|
||||||
|
|
||||||
def play_until_win(boards_list, draws):
|
|
||||||
""" play until win and return last pos """
|
|
||||||
|
|
||||||
for d in draws:
|
|
||||||
for board in boards_list:
|
|
||||||
if board.mark_number(d):
|
|
||||||
print("this board wins !")
|
|
||||||
board.print_with_mark()
|
|
||||||
return board, d
|
|
||||||
|
|
||||||
|
|
||||||
def play(boards_list, draws):
|
def play(boards_list, draws):
|
||||||
""" call all numbers
|
""" call all numbers
|
||||||
could stop when all boards have won ;-) """
|
could stop when all boards have won ;-) """
|
||||||
|
|
2
6/6.py
2
6/6.py
|
@ -9,7 +9,7 @@ def parse_file(file):
|
||||||
|
|
||||||
def iterate(state):
|
def iterate(state):
|
||||||
new_fish = 0
|
new_fish = 0
|
||||||
for i in range(len(state)):
|
for i, _ in enumerate(state):
|
||||||
if state[i] == 0:
|
if state[i] == 0:
|
||||||
new_fish += 1
|
new_fish += 1
|
||||||
state[i] = 6
|
state[i] = 6
|
||||||
|
|
4
8/8.py
4
8/8.py
|
@ -5,7 +5,7 @@ def parse_file(file):
|
||||||
outs = []
|
outs = []
|
||||||
with open(file) as f:
|
with open(file) as f:
|
||||||
for line in f.readlines():
|
for line in f.readlines():
|
||||||
nums, out = line.strip().split('| ')
|
_, out = line.strip().split('| ')
|
||||||
outs.append(out)
|
outs.append(out)
|
||||||
|
|
||||||
return outs
|
return outs
|
||||||
|
@ -19,7 +19,7 @@ for o in outputs:
|
||||||
words = o.split(' ')
|
words = o.split(' ')
|
||||||
for w in words:
|
for w in words:
|
||||||
length = len(w)
|
length = len(w)
|
||||||
if length == 2 or length == 3 or length == 4 or length == 7:
|
if length in (2, 3, 4, 7):
|
||||||
count += 1
|
count += 1
|
||||||
|
|
||||||
print(f'{count}')
|
print(f'{count}')
|
||||||
|
|
4
8/8_2.py
4
8/8_2.py
|
@ -15,10 +15,10 @@ def parse_file(file):
|
||||||
return numbers_list, outputs
|
return numbers_list, outputs
|
||||||
|
|
||||||
|
|
||||||
def print_numbers(id):
|
def print_numbers(id_num):
|
||||||
print('identified numbers:')
|
print('identified numbers:')
|
||||||
for i in range(10):
|
for i in range(10):
|
||||||
print(f'{i} is {id[i]}')
|
print(f'{i} is {id_num[i]}')
|
||||||
|
|
||||||
|
|
||||||
# entries, displays = parse_file('input_example1.txt')
|
# entries, displays = parse_file('input_example1.txt')
|
||||||
|
|
4
9/9.py
4
9/9.py
|
@ -14,8 +14,8 @@ def parse_file(file):
|
||||||
|
|
||||||
|
|
||||||
def print_hmap(hmap):
|
def print_hmap(hmap):
|
||||||
for y in range(len(hmap)):
|
for y, _ in enumerate(hmap):
|
||||||
for x in range(len(hmap[y])):
|
for x, _ in enumerate(hmap[y]):
|
||||||
print(hmap[y][x], end='')
|
print(hmap[y][x], end='')
|
||||||
print()
|
print()
|
||||||
|
|
||||||
|
|
7
9/9_2.py
7
9/9_2.py
|
@ -13,13 +13,6 @@ def parse_file(file):
|
||||||
return hmap
|
return hmap
|
||||||
|
|
||||||
|
|
||||||
def print_hmap(hmap):
|
|
||||||
for y in range(len(hmap)):
|
|
||||||
for x in range(len(hmap[y])):
|
|
||||||
print(hmap[y][x], end='')
|
|
||||||
print()
|
|
||||||
|
|
||||||
|
|
||||||
def find_lowpoints(hmap):
|
def find_lowpoints(hmap):
|
||||||
lpoints = []
|
lpoints = []
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue