aboutsummaryrefslogtreecommitdiff
path: root/src/2017/day13/aoc.cpp
diff options
context:
space:
mode:
authorkaiwu <kaiwu2004@gmail.com>2023-02-09 10:16:38 +0800
committerkaiwu <kaiwu2004@gmail.com>2023-02-09 10:16:38 +0800
commit3ebd8e1ef07d8ec202970374c81b1a874e5506f3 (patch)
tree319d465ea3e95c0c902caf71bfb2701ce89ec0d8 /src/2017/day13/aoc.cpp
parentd7f2eb88d8d17e91657b03be6376761338cd6141 (diff)
downloadadvent-of-code-3ebd8e1ef07d8ec202970374c81b1a874e5506f3.tar.gz
advent-of-code-3ebd8e1ef07d8ec202970374c81b1a874e5506f3.zip
2017 day13
Diffstat (limited to 'src/2017/day13/aoc.cpp')
-rw-r--r--src/2017/day13/aoc.cpp16
1 files changed, 15 insertions, 1 deletions
diff --git a/src/2017/day13/aoc.cpp b/src/2017/day13/aoc.cpp
index bab6825..cb7bf1d 100644
--- a/src/2017/day13/aoc.cpp
+++ b/src/2017/day13/aoc.cpp
@@ -2,6 +2,15 @@
namespace aoc2017 {
+bool delay_at(int t, const std::vector<scanner>& vs) {
+ for (auto& s : vs) {
+ if (s.at_level(s.depth + t) == 0) {
+ return false;
+ }
+ }
+ return true;
+}
+
std::pair<int64_t, int64_t> day13(line_view file) {
std::vector<scanner> vs;
per_line(file, [&vs](line_view lv) {
@@ -17,9 +26,14 @@ std::pair<int64_t, int64_t> day13(line_view file) {
}
}
+ int delay{0};
+ while (!delay_at(delay, vs)) {
+ delay++;
+ }
+
// for (auto& s: vs) {
// s.print();
// }
- return {severity, 0};
+ return {severity, delay};
}
} // namespace aoc2017