#include <bits/stdc++.h>
using namespace std;
void pv(vector<long long int> &v) {
  for (int i = (0); i < (v.size()); i++) {
    cout << v[i] << " ";
  }
}
int main() {
  int n;
  vector<int> arr(100001);
  vector<long long int> l1(201, 0), e1(201, 0), s1(201, 0);
  vector<long long int> l2(201, 0), e2(201, 0), s2(201, 0);
  long long int w, x, y, z;
  cin >> n;
  for (int i = (0); i < (n); i++) {
    cin >> arr[i + 1];
  }
  for (int j = (1); j < (201); j++) {
    l1[j] = l1[j - 1];
    if (arr[1] == -1 || j == arr[1]) {
      l1[j] = (l1[j] + 1) % 998244353ll;
    }
  }
  for (int i = (2); i < (n + 1); i++) {
    swap(l1, l2);
    swap(e1, e2);
    swap(s1, s2);
    w = (e2[200] + s2[200]) % 998244353ll;
    for (int j = (1); j < (201); j++) {
      l1[j] = l1[j - 1];
      e1[j] = e1[j - 1];
      s1[j] = s1[j - 1];
      if (arr[i] == -1 || j == arr[i]) {
        x = ((l2[j - 1] + e2[j - 1]) % 998244353ll + s2[j - 1]) % 998244353ll;
        y = (e2[j] + s2[j]) % 998244353ll;
        z = (l2[j] + y) % 998244353ll;
        l1[j] = (l1[j] + x) % 998244353ll;
        e1[j] = (e1[j] + (z - x + 998244353ll)) % 998244353ll;
        s1[j] = (s1[j] + (w - y + 998244353ll)) % 998244353ll;
      }
    }
  }
  cout << ((e1[200] + s1[200]) % 998244353ll);
  return 0;
}
