Advent of Code 2025: 3
Este problema consiste en encontrar el mayor numero menor a 100 en una serie de digitos, la regla es que el primer digito debe de estar antes del segundo digito en el numero dado
Solucion
Mi solucion fue iterar sobre el numero y buscar que numero es el mas grande, despues de que se encontro, seguir buscando por el segundo mas grande, si se encuentra uno más grande que el primero, lo reemplazamos y volvemos a buscar
total = 0
with open("./input.txt", "r") as f:
lines = f.readlines()
for line in lines:
first_char = 0
curr_index = 0
max_num = 0
le = len(line)
for index, char in enumerate(line):
if char == "\n":
continue
char = int(char)
# print(char)
if char > first_char:
# print(f"el numero {char} es mayor que {first_char}")
first_char = char
curr_index = index
second_char = 0
for i in range(curr_index+1, le):
curr_char = line[i]
if curr_char == "\n":
break
curr_char = int(curr_char)
if curr_char > second_char:
second_char = curr_char
n_max_num = (first_char*10)+second_char
# print(f"el numero {second_char} encontrado")
if n_max_num > max_num:
max_num = n_max_num
total += max_num
# print(max_num)
print(total)