#include <bits/stdc++.h>
using namespace std;
const int maxn = 2e5 + 5;
const long long mod = 998244353;
long long pow_mod(long long a, long long b, long long c = mod,
                  long long ans = 1) {
  while (b) {
    if (b & 1) ans = (a * ans) % c;
    a = (a * a) % c, b >>= 1;
  }
  return ans;
}
long long inv_mod(long long a) { return pow_mod(a, mod - 2); }
long long p[maxn], dqs[maxn], sum[maxn], pref[maxn];
long long query(int l, int r) {
  return (sum[l] - sum[r + 1] + mod) * pref[r + 1] % mod;
}
int main() {
  ios::sync_with_stdio(false);
  long long n, m, a, q, last = 0, now = 0;
  cin >> n >> q;
  dqs[n + 1] = pref[n + 1] = 1;
  for (int i = 1; i <= n; i++) cin >> p[i], p[i] = 100 * inv_mod(p[i]) % mod;
  for (int i = n; i >= 1; i--) dqs[i] = (dqs[i + 1] * p[i]) % mod;
  for (int i = n; i >= 1; i--) pref[i] = inv_mod(dqs[i]);
  for (int i = n; i >= 1; i--) sum[i] = (sum[i + 1] + dqs[i]) % mod;
  long long ans = query(1, n);
  set<int> s;
  s.insert(1);
  s.insert(n + 1);
  while (q--) {
    cin >> a;
    if (s.count(a)) {
      auto it = s.find(a);
      auto pre = it, nxt = it;
      pre--, nxt++;
      ans += query(*pre, *nxt - 1);
      ans -= query(*pre, *it - 1);
      ans -= query(*it, *nxt - 1);
      s.erase(a);
      ans = (ans + mod + mod) % mod;
    } else {
      s.insert(a);
      auto it = s.find(a);
      auto pre = it, nxt = it;
      pre--, nxt++;
      ans -= query(*pre, *nxt - 1);
      ans += query(*pre, *it - 1);
      ans += query(*it, *nxt - 1);
      ans = (ans + mod) % mod;
    }
    cout << ans << endl;
  }
}
