#include using namespace std; void fast_io() { ios_base::sync_with_stdio(false); cin.tie(nullptr); } int main() { fast_io(); int n; cin >> n; vector p(n); for (int i = 0; i < n; i++) { cin >> p[i]; } set unused; for (int i = 1; i <= n; i++) { unused.insert(i); } long long ans = 0; for (int i = n - 1; i >= 0; i--) { auto it = unused.lower_bound(p[i] + 1); if (it == unused.end()) { auto it_prev = prev(it); if (*it_prev == p[i]) { unused.erase(it_prev); } else { unused.erase(unused.begin()); ans -= i + 1; } } else { ans += i + 1; unused.erase(it); } } cout << ans << endl; }