#include <bits/stdc++.h>
using namespace std;
int n, a[104], ans;
int m[104][104][104][2];
int main() {
  cin >> n;
  for (int i = 1; i <= n; i++) cin >> a[i];
  memset(m, 0x3f, sizeof(m));
  m[0][0][0][0] = 0;
  for (int i = 1; i <= n; i++)
    for (int j = 0; j <= i; j++)
      for (int k = 0; k <= i; k++) {
        if (a[i] == 0 or a[i] % 2 == 0 and j)
          m[i][j][k][0] = min({m[i][j][k][0], m[i - 1][j - 1][k][0],
                               m[i - 1][j - 1][k][1] + (i > 1)});
        if (a[i] == 0 or a[i] % 2 == 1 and k)
          m[i][j][k][1] = min({m[i][j][k][1], m[i - 1][j][k - 1][0] + (i > 1),
                               m[i - 1][j][k - 1][1]});
      }
  int ans = min(m[n][n / 2][(n + 1) / 2][0], m[n][n / 2][(n + 1) / 2][1]);
  cout << ans << '\n';
}
