FILE = "input.txt" def main(): line = open(FILE).readlines()[0].strip() ranges = [ [int(n) for n in l.split("-")] for l in line.split(",") ] invalid_ids = [ id for (start, end) in ranges for id in range(start, end + 1) if invalid(str(id)) ] return sum(invalid_ids) def invalid(id: str) -> bool: for n in range(1, len(id)//2 + 1): sub = { id[i:i+n] for i in range(0, len(id), n) } if len(sub) == 1: return True return False if __name__ == "__main__": print(main())