25 lines
636 B
Python
25 lines
636 B
Python
from pathlib import Path
|
|
|
|
|
|
def get_ordered_lists(data_file: Path) -> tuple[list[int], list[int]]:
|
|
list1 = list()
|
|
list2 = list()
|
|
for line in data_file.open():
|
|
numbers = line.strip().split(" ")
|
|
list1.append(int(numbers[0]))
|
|
list2.append(int(numbers[1]))
|
|
return sorted(list1), sorted(list2)
|
|
|
|
|
|
def compute_distance(list1, list2) -> int:
|
|
return sum([abs(item2 - item1) for item1, item2 in zip(list1, list2)])
|
|
|
|
|
|
def main():
|
|
file = Path(__file__).parent / "input-data"
|
|
list1, list2 = get_ordered_lists(file)
|
|
print(compute_distance(list1, list2))
|
|
|
|
|
|
if __name__ == "__main__":
|
|
main()
|