import sys def main(): with open("aoc3-1.txt", "r") as file: inputs = [el.strip() for el in file.readlines()] digits = [[] for _ in range(len(inputs[0]))] for j, ip in enumerate(inputs): # print(digits, ip) for i, dg in enumerate(ip): # print(i, dg) dg = dg.strip() if dg != "": digits[i].append(int(dg)) # if j >= 2: # sys.exit(0) gamma, epsilon = [], [] for el in digits: gamma.append(1 if el.count(1) >= el.count(0) else 0) epsilon.append(0 if el.count(1) >= el.count(0) else 1) gamma_str = "".join([str(el) for el in gamma]) epsilon_str = "".join([str(el) for el in epsilon]) gamma_int = int(gamma_str, 2) epsilon_int = int(epsilon_str, 2) print(f"Gamma: {gamma_str} -- {gamma_int}") print(f"Epsilon: {epsilon_str} -- {epsilon_int}") print(f"Consumption: {gamma_int*epsilon_int}") if __name__ == "__main__": main()