#include using namespace std; random_device rng_seed; mt19937_64 rng(rng_seed()); int main() { int n = 1000; vector p(n); iota(p.begin(), p.end(), 0); for (int i = 0; i < 500; i++) { p.at(2 * i) = i; p.at(2 * i + 1) = 999 - i; } vector a(n - 1); for (int i = 0; i < n - 1; i++) { a.at(i) = i % 2 == 0; } for (int i = 0; i < 10; i++) { vector r(n); r.at(0) = p.at(0); for (int j = 0; j < n - 1; j++) { if (a.at(j) == 0) { r.at(j + 1) = min(r.at(j), p.at(j + 1)); } else { r.at(j + 1) = max(r.at(j), p.at(j + 1)); } } int count = 0; for (int j = 0; j < n - 1; j++) { if (r.at(j) == r.at(j + 1)) { count++; a.at(j) = 1 - a.at(j); } } cout << count << endl; } return 0; }