#include <bits/stdc++.h>
using namespace std;
int main() {
  ios_base::sync_with_stdio(false);
  int N, K;
  cin >> N >> K;
  int A[N];
  for (int i = 0; i < N; ++i) {
    cin >> A[i];
  }
  map<int, int> m;
  m[0] = 0;
  for (int i = 0; i < N; ++i) {
    for (int j = 1; j <= K; ++j) {
      if (m.count(A[i] * j) > 0) {
        if (m[A[i] * j] > j) {
          m[A[i] * j] = j;
        }
      } else {
        m[A[i] * j] = j;
      }
    }
  }
  int q;
  cin >> q;
  for (int u = 0; u < q; ++u) {
    int value;
    cin >> value;
    int minans = 100;
    for (std::map<int, int>::iterator it = m.begin(); it != m.end(); ++it) {
      int num = it->first;
      int cnt = it->second;
      if (num > value) {
        continue;
      }
      if (m.count(value - num) > 0) {
        minans = min(minans, cnt + m[value - num]);
      }
    }
    if (minans > K) {
      cout << -1 << "\n";
    } else {
      cout << minans << "\n";
    }
  }
  return 0;
}
