file = "input.txt" def calculate_total_distance(left_list, right_list): left_list.sort() right_list.sort() total_distance = sum(abs(l - r) for l, r in zip(left_list, right_list)) return total_distance def calculate_similarity_score(left_list, right_list): from collections import Counter right_count = Counter(right_list) similarity_score = sum(l * right_count[l] for l in left_list) return similarity_score def main(): with open(file, 'r') as f: lines = f.readlines() left_list = [] right_list = [] for line in lines: left, right = map(int, line.split()) left_list.append(left) right_list.append(right) # Part 1: Calculate the total distance total_distance = calculate_total_distance(left_list, right_list) print(total_distance) # Part 2: Calculate the similarity score similarity_score = calculate_similarity_score(left_list, right_list) print(similarity_score) main()