From c22ac1e50ff43d6c04de30c9eb602cb85423364c Mon Sep 17 00:00:00 2001 From: SebastianStork Date: Tue, 3 Dec 2024 21:41:08 +0100 Subject: [PATCH] Add solution for day-01 part one --- 2024/day-01/main.cpp | 39 +++++++++++++++++++++++++++++++++++++-- 1 file changed, 37 insertions(+), 2 deletions(-) diff --git a/2024/day-01/main.cpp b/2024/day-01/main.cpp index 3129fb9..d21b9f6 100644 --- a/2024/day-01/main.cpp +++ b/2024/day-01/main.cpp @@ -1,9 +1,44 @@ +#include #include +#include using namespace std; +void sort(vector &list) +{ + for (size_t i = 0; i < list.size() - 1; i++) { + for (size_t j = i + 1; j < list.size(); j++) { + if (list[i] > list[j]) { + int temp = list[i]; + list[i] = list[j]; + list[j] = temp; + } + } + } +} + int main() { - cout << "Hello World!" << endl; - return 0; + vector list1, list2; + + { + ifstream inputFile("input"); + string line; + while (getline(inputFile, line)) { + list1.push_back(stoi(line.substr(0, 5))); + list2.push_back(stoi(line.substr(8, 5))); + } + } + + sort(list1); + sort(list2); + + int totalDistance = 0; + + for (size_t i = 0; i < list1.size(); i++) { + int distance = list1[i] - list2[i]; + totalDistance += (distance >= 0) ? distance : -distance; + } + + cout << "Total distance between the lists: " << totalDistance << endl; }