advent-of-code/2024/day01/part1.cc

26 lines
672 B
C++
Raw Normal View History

2024-12-11 02:22:13 +00:00
#include <vector>
#include <iostream>
#include <ranges>
#include <cstdlib>
#include <cmath>
#include <cassert>
#include <algorithm>
int main() {
std::vector<int> left_list, right_list;
int left, right;
while (std::cin >> left >> right) {
left_list.emplace_back(left);
right_list.emplace_back(right);
}
std::sort(left_list.begin(), left_list.end());
std::sort(right_list.begin(), right_list.end());
assert(left_list.size() == right_list.size());
int diff = 0;
for(auto [left_elem, right_elem] : std::views::zip(left_list, right_list)) {
diff += std::abs(left_elem - right_elem);
}
std::cout << diff << std::endl;
return EXIT_SUCCESS;
}