#include <bits/stdc++.h>
using namespace std;
int c[11111];
bool b[11111111];
int main() {
  int n, k;
  scanf("%d %d", &n, &k);
  for (int i = 0; i < n; i++) {
    scanf("%d", c + i);
    b[c[i]] = 1;
  }
  int q;
  scanf("%d", &q);
  while (q--) {
    int s;
    scanf("%d", &s);
    bool f = false;
    for (int kk = 1; kk <= k && !f; kk++) {
      for (int a = 1; a <= kk && !f; a++) {
        int i = 0;
        for (i = 0; !f && i < n && c[i] * (kk - a) < s; i++) {
          if ((s - (kk - a) * c[i]) % a == 0) {
            long long t = (s - (kk - a) * c[i]) / a;
            if (t > c[n - 1]) continue;
            if (b[t] && t >= c[i]) {
              printf("%d\n", kk);
              f = true;
            }
          }
        }
      }
    }
    if (!f) printf("-1\n");
  }
  return 0;
}
