aboutsummaryrefslogtreecommitdiff
path: root/src/2015/day19/aoc.cpp
diff options
context:
space:
mode:
authorkaiwu <kaiwu2004@gmail.com>2022-03-23 08:48:34 +0800
committerkaiwu <kaiwu2004@gmail.com>2022-03-23 08:48:34 +0800
commitec0f202ae25905739d40a152e05d8393af0b4ea6 (patch)
treea780fa7ea74a5f07bdcdb3696952f099e3b2d286 /src/2015/day19/aoc.cpp
parent6c4f0e193314b179f9ffb81b00c1b36c69e3e430 (diff)
downloadadvent-of-code-ec0f202ae25905739d40a152e05d8393af0b4ea6.tar.gz
advent-of-code-ec0f202ae25905739d40a152e05d8393af0b4ea6.zip
day19 part2
Diffstat (limited to 'src/2015/day19/aoc.cpp')
-rw-r--r--src/2015/day19/aoc.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/2015/day19/aoc.cpp b/src/2015/day19/aoc.cpp
index b665871..1fa17aa 100644
--- a/src/2015/day19/aoc.cpp
+++ b/src/2015/day19/aoc.cpp
@@ -2,7 +2,7 @@
namespace aoc2015 {
-int day19(line_view file) {
+std::pair<int, int> day19(line_view file) {
molecule m;
per_line(file, [&m](line_view lv) {
m.parse(lv);
@@ -10,7 +10,9 @@ int day19(line_view file) {
});
std::map<int, std::vector<molecule::change>> changes;
m.check(changes);
- return m.distinct(changes);
+ int shortest = INT32_MAX;
+ m.deduct(m.original, 0, &shortest);
+ return {m.distinct(changes), shortest};
}
} // namespace aoc2015