#include <bits/stdc++.h>
using namespace std;
const int maxn = 1e5 + 10, mod = 1e9 + 7;
const long long inf = 1e18 + 1;
int main() {
  ios::sync_with_stdio(false);
  cin.tie(0);
  cout.tie(0);
  ;
  int t;
  cin >> t;
  for (int l = 0; l < t; l++) {
    int n, p, k;
    cin >> n >> p >> k;
    vector<int> inp;
    for (int i = 0; i < n; i++) {
      int x;
      cin >> x;
      inp.push_back(x);
    }
    sort(inp.begin(), inp.end());
    long long dp[n + 10];
    dp[1] = inp[0];
    dp[0] = 0;
    if (dp[1] > p) {
      cout << 0 << "\n";
      continue;
    }
    long long ans = 1;
    for (int i = 1; i < n; i++) {
      dp[i + 1] = min(dp[i] + inp[i], dp[i - 1] + inp[i]);
      if (dp[i + 1] <= p) ans++;
    }
    cout << ans << "\n";
  }
  return 0;
}
