#include <bits/stdc++.h>
using namespace std;
int ans, n, a[10005], cnt, f, i, j, vis[10005];
int main() {
  scanf("%d", &n);
  for (i = 0; i < n; i++) {
    scanf("%d", &a[i]);
  }
  ans = 0;
  f = 0;
  cnt = 0;
  memset(vis, 0, sizeof vis);
  for (i = 0; i < n; i++) {
    if (!f) {
      for (j = 0; j < n; j++) {
        if (cnt >= a[j] && !vis[j]) {
          vis[j] = 1;
          cnt++;
        }
      }
    } else {
      for (j = n - 1; j >= 0; j--) {
        if (cnt >= a[j] && !vis[j]) {
          vis[j] = 1;
          cnt++;
        }
      }
    }
    if (cnt == n) {
      break;
    } else {
      ans++;
    }
    f = 1 - f;
  }
  printf("%d", ans);
  return 0;
}
