diff --git a/2019/src/day06.cpp b/2019/src/day06.cpp index 5aa3385..8ea162a 100644 --- a/2019/src/day06.cpp +++ b/2019/src/day06.cpp @@ -1,25 +1,18 @@ +#include #include -#include -#include -#include +#include +#include #include "days.hpp" namespace { std::vector> read_orbits(std::istream &input) { std::vector> result; - std::string buffer; + std::string name1, name2; - std::regex regex("^([A-Z0-9]+)\\)([A-Z0-9]+)$"); - std::smatch match_results; + while (std::getline(input, name1, ')')) { + std::getline(input, name2); - while (std::getline(input, buffer)) { - if (!std::regex_match(buffer, match_results, regex)) { - std::string error = "Invalid line: "; - error += buffer; - throw std::domain_error(error); - } - - result.emplace_back(match_results[1], match_results[2]); + result.emplace_back(name1, name2); } return result;