import sys from typing import List def parseString(filename: str) -> List[List[str]]: with open(filename, 'r') as file: file_content = file.read() ranges_str = file_content.split(',') return [rng.split('-') for rng in ranges_str] def main() -> int: ranges = parseString(sys.argv[1]) print(f"ranges:\n{ranges}") invalids = [] for rng in ranges: start, end = rng for i in range(int(start), int(end)): N = len(str(i)) if str(i)[:N//2] == str(i)[N//2:]: invalids.append(i) return sum(invalids) if __name__ == "__main__": print(main())