#include <bits/stdc++.h>
using namespace std;
const int INF = 1000000007;
int n, a[200005];
int main() {
  int ans = 1, cnt = 0, gap = 0;
  scanf("%d", &n);
  for (int i = 1; i <= n; i++) scanf("%d", a + i);
  for (int i = 1, j = 1, k = -1; i <= n; i++) {
    if (cnt >= 2) {
      if (~a[i]) {
        if ((a[i] - a[j]) % (i - j) || (a[i] - a[j]) / (i - j) != gap) {
          ans++;
          cnt = 0;
          k = -1;
        }
      } else {
        if (gap < 0 && a[j] + (i - j) * gap <= 0) {
          ans++;
          cnt = 0;
          k = -1;
        }
      }
    }
    if (cnt == 1 && ~a[i]) {
      if ((a[i] - a[j]) % (i - j)) {
        ans++;
        cnt = 0;
        k = -1;
      } else {
        gap = (a[i] - a[j]) / (i - j);
        cnt++;
        if (gap > 0 && a[j] - gap * 1ll * (j - k) <= 0) {
          ans++;
          cnt = 0;
          k = -1;
        }
      }
    }
    if (cnt == 0) {
      if (k < 0) k = i;
      if (~a[i]) {
        j = i;
        cnt++;
      }
    }
  }
  printf("%d\n", ans);
}
