#if !defined(__clang__) && defined(__GNUC__) #include #else #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #endif // !defined(__clang__) && defined(__GNUG__) using namespace std; int main() { int64_t N, M; std::cin >> N >> M; std::vector A; for (decltype(M) i = 0; i < M; ++i) { int64_t t; std::cin >> t; A.push_back(t); } std::reverse(std::begin(A), std::end(A)); int64_t pos = 1; for (auto a: A) { if (pos == 1) { pos = a; } else if (pos > a) { // nop } else { pos = pos - 1; } } std::cout << pos << std::endl; #if 0 std::list A; for (int64_t i = 1; i <= 50; ++i) { A.push_back(i); } for (decltype(M) i = 1; i <= M; ++i) { int64_t t; std::cin >> t; A.splice(A.begin(), A, std::next(A.begin(), t-1)); } std::cout << *A.begin() << std::endl; #endif return 0; }