#include #include #include using namespace std; const int N = 15010, MOD = 2013122999; int n, k, q, a[N], f[N], nf[N]; int main() { scanf("%d%d", &n, &k); f[0] = 1; for (int i = 1; i <= n; ++i) { scanf("%d", &a[i]); for (int j = k; j >= a[i]; --j) { f[j] = (0LL + f[j] + f[j - a[i]]) % MOD; } } scanf("%d", &q); while (q--) { int x, v; scanf("%d%d", &x, &v); memcpy(nf, f, sizeof(f)); if (a[x] > 0 && a[x] <= k) { for (int i = a[x]; i <= k; ++i) { nf[i] = (nf[i] - nf[i - a[x]] + MOD) % MOD; } } if (v > 0 && v <= k) { for (int i = k; i >= v; --i) { nf[i] = (0LL + nf[i] + nf[i - v]) % MOD; } } a[x] = v; memcpy(f, nf, sizeof(nf)); if (f[k] == 0) puts("0"); else puts("1"); } return 0; }