#include <bits/stdc++.h>
const int mx = 1e6 + 5;
const int inf = 0x3f3f3f3f;
using namespace std;
int main() {
  ios::sync_with_stdio(0);
  cin.tie(0);
  int t;
  scanf("%d", &t);
  while (t--) {
    long long int n, m, sum = 0;
    int ans = 0;
    scanf("%lld%lld", &n, &m);
    priority_queue<int> p;
    for (int i = 0; i < m; ++i) {
      long long int x;
      scanf("%lld", &x);
      p.push(x);
      sum += x;
    }
    if (sum < n) {
      puts("-1");
      continue;
    }
    while (n) {
      long long int x = p.top();
      p.pop();
      if (x <= n)
        n -= x, sum -= x;
      else if (sum - x < n) {
        p.push(x / 2);
        p.push(x / 2);
        ++ans;
      } else
        sum -= x;
    }
    printf("%d\n", ans);
  }
  return 0;
}
