aocpp/day09.cpp

26 lines
597 B
C++

#include <iostream>
#include <utility>
#include <aocpp/Startup.hpp>
#include <intcode/intcode.hpp>
using namespace intcode;
namespace {
auto Compute(Machine machine, ValueType d) -> ValueType {
ValueType output = -1;
Run(machine,
[=](){ return d; },
[&](auto o) { output = o; });
return output;
}
} // namespace
auto main(int argc, char** argv) -> int {
auto fin = aocpp::Startup(argc, argv);
auto machine = Machine{ParseStream(fin)};
std::cout << "Part 1: " << Compute(machine, 1) << std::endl;
std::cout << "Part 2: " << Compute(std::move(machine), 2) << std::endl;
}