diff options
Diffstat (limited to 'day17.cc')
-rw-r--r-- | day17.cc | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/day17.cc b/day17.cc new file mode 100644 index 0000000..8d55407 --- /dev/null +++ b/day17.cc @@ -0,0 +1,26 @@ +#include <iostream> +#include <vector> +#include <algorithm> + +using namespace std; + +int +main() +{ + int d; + cin >> d; + + vector<int> v{0}; + v.reserve(2018); + for (int i = 1; i <= 2017; i++) { + rotate(begin(v), begin(v) + d % size(v), end(v)); + v.push_back(i); + } + + long p2; + for (long l = 1, p = 0; l < 50'000'000; p = (p + 1 + d) % ++l) + if (p == 0) + p2 = l; + + cout << v[0] << endl << p2 << endl; // 1306 20430489 +} |