#include #include #include #include using namespace std; #define REP(i,s,e) for (i = s; i <= e; i++) #define rep(i,n) REP (i,0,(int)(n)-1) #define RREP(i,s,e) for (i = s; i >= e; i--) #define rrep(i,n) RREP (i,(int)(n)-1,0) const int INF = 1e8; const int MOD = 1e9+7; typedef long long ll; int dp[100001]; int main(void) { int d; int a[60]; cin >> d; while (d--) { int i, j, k, m; int n[2]; cin >> n[0] >> n[1] >> m; rep (i,m) cin >> a[i]; sort(a,a+m); rep (i,n[0]+1) dp[i] = 0; int sum = 0; rep (i,m) { rrep(j,n[0]+1) if (dp[j] == i) { if (sum >= j && n[1] - (sum - j) >= a[i]) dp[j] = i+1; if (n[0] - j >= a[i]) dp[j+a[i]] = i+1; } sum += a[i]; } int ans = 0; rep (i,n[0]+1) ans = max(ans,dp[i]); cout << ans << endl; } return 0; }