diff options
Diffstat (limited to 'src/2020/day6/aoc.cpp')
-rw-r--r-- | src/2020/day6/aoc.cpp | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/2020/day6/aoc.cpp b/src/2020/day6/aoc.cpp index 849bad9..d64262e 100644 --- a/src/2020/day6/aoc.cpp +++ b/src/2020/day6/aoc.cpp @@ -1,5 +1,26 @@ #include "aoc.h" +#include <algorithm> +#include <vector> namespace aoc2020 { +int day6(line_view file) { + std::vector<question_group> gs; + + const char* p1 = file.line; + const char* p = p1; + while (p < file.line + file.length) { + if (*p == '\n' && *(p + 1) == '\n') { + gs.emplace_back(line_view{p1, p}); + p1 = p + 2; + } + p++; + } + gs.emplace_back(line_view{p1, p}); + + int total{0}; + std::for_each(gs.begin(), gs.end(), [&total](const question_group& g) { total += g.summary(); }); + return total; } + +} // namespace aoc2020 |