diff options
author | kaiwu <kaiwu2004@gmail.com> | 2022-12-08 14:21:44 +0800 |
---|---|---|
committer | kaiwu <kaiwu2004@gmail.com> | 2022-12-08 14:21:44 +0800 |
commit | c3a3e3fe4f98931a1de9ea198119a1f0bf71a320 (patch) | |
tree | f24ef2565476ba2818786fcfed045c169af3c314 /src/2022/day8/aoc.cpp | |
parent | 33c75ac0c078bd50b560ea2f0361d8230585568f (diff) | |
download | advent-of-code-c3a3e3fe4f98931a1de9ea198119a1f0bf71a320.tar.gz advent-of-code-c3a3e3fe4f98931a1de9ea198119a1f0bf71a320.zip |
2022 day8
Diffstat (limited to 'src/2022/day8/aoc.cpp')
-rw-r--r-- | src/2022/day8/aoc.cpp | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/src/2022/day8/aoc.cpp b/src/2022/day8/aoc.cpp index 94ddf69..ff69ecc 100644 --- a/src/2022/day8/aoc.cpp +++ b/src/2022/day8/aoc.cpp @@ -2,7 +2,28 @@ namespace aoc2022 { std::pair<int,int> day8(line_view file) { - return {0, 0}; + trees ts; + int r{0}; + per_line(file, [&r, &ts](line_view lv){ + ts.load(r++, lv); + return true; + }); + + // ts.print(); + + int visiable{0}; + int score{0}; + for (int y = 0; y < trees::grid; y++) { + for (int x = 0; x < trees::grid; x++) { + visiable += (int) ts.visiable({x, y}); + int s = ts.score({x,y}); + if (s > score) { + score = s; + } + } + } + + return {visiable, score}; } } |