#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
 
int main() {
    int T;
    cin >> T;  // Input number of test cases
    while (T--) {
        int n;
        cin >> n;  // Number of rounds
        vector<int> s(n);  // Scores for each round
        for (int i = 0; i < n; ++i) {
            cin >> s[i];
        }
 
        // Sorting Alice's possible responses to maximize her wins
        int a, b, c;
        cin >> a >> b >> c;
 
        // Alice's score options sorted in descending order
        vector<int> alice_scores = {a, b, c};
        sort(alice_scores.rbegin(), alice_scores.rend());
 
        // Count Bob's scores
        vector<int> bob_scores(3, 0);
        for (int i = 0; i < n; ++i) {
            bob_scores[s[i]]++;
        }
 
        int win_count = 0;
 
        // Try to match Alice's scores against Bob's scores to maximize her wins
        for (int i = 0; i < 3; ++i) {
            for (int j = 0; j < 3; ++j) {
                if (alice_scores[i] > j && bob_scores[j] > 0) {
                    win_count++;
                    bob_scores[j]--;
                    break;
                }
            }
        }
 
        // Output the result
        cout << win_count << endl;
    }
 
    return 0;
}
 
				I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgojaW5jbHVkZSA8YWxnb3JpdGhtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IG1haW4oKSB7CiAgICBpbnQgVDsKICAgIGNpbiA+PiBUOyAgLy8gSW5wdXQgbnVtYmVyIG9mIHRlc3QgY2FzZXMKICAgIHdoaWxlIChULS0pIHsKICAgICAgICBpbnQgbjsKICAgICAgICBjaW4gPj4gbjsgIC8vIE51bWJlciBvZiByb3VuZHMKICAgICAgICB2ZWN0b3I8aW50PiBzKG4pOyAgLy8gU2NvcmVzIGZvciBlYWNoIHJvdW5kCiAgICAgICAgZm9yIChpbnQgaSA9IDA7IGkgPCBuOyArK2kpIHsKICAgICAgICAgICAgY2luID4+IHNbaV07CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC8vIFNvcnRpbmcgQWxpY2UncyBwb3NzaWJsZSByZXNwb25zZXMgdG8gbWF4aW1pemUgaGVyIHdpbnMKICAgICAgICBpbnQgYSwgYiwgYzsKICAgICAgICBjaW4gPj4gYSA+PiBiID4+IGM7CiAgICAgICAgCiAgICAgICAgLy8gQWxpY2UncyBzY29yZSBvcHRpb25zIHNvcnRlZCBpbiBkZXNjZW5kaW5nIG9yZGVyCiAgICAgICAgdmVjdG9yPGludD4gYWxpY2Vfc2NvcmVzID0ge2EsIGIsIGN9OwogICAgICAgIHNvcnQoYWxpY2Vfc2NvcmVzLnJiZWdpbigpLCBhbGljZV9zY29yZXMucmVuZCgpKTsKICAgICAgICAKICAgICAgICAvLyBDb3VudCBCb2IncyBzY29yZXMKICAgICAgICB2ZWN0b3I8aW50PiBib2Jfc2NvcmVzKDMsIDApOwogICAgICAgIGZvciAoaW50IGkgPSAwOyBpIDwgbjsgKytpKSB7CiAgICAgICAgICAgIGJvYl9zY29yZXNbc1tpXV0rKzsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgaW50IHdpbl9jb3VudCA9IDA7CgogICAgICAgIC8vIFRyeSB0byBtYXRjaCBBbGljZSdzIHNjb3JlcyBhZ2FpbnN0IEJvYidzIHNjb3JlcyB0byBtYXhpbWl6ZSBoZXIgd2lucwogICAgICAgIGZvciAoaW50IGkgPSAwOyBpIDwgMzsgKytpKSB7CiAgICAgICAgICAgIGZvciAoaW50IGogPSAwOyBqIDwgMzsgKytqKSB7CiAgICAgICAgICAgICAgICBpZiAoYWxpY2Vfc2NvcmVzW2ldID4gaiAmJiBib2Jfc2NvcmVzW2pdID4gMCkgewogICAgICAgICAgICAgICAgICAgIHdpbl9jb3VudCsrOwogICAgICAgICAgICAgICAgICAgIGJvYl9zY29yZXNbal0tLTsKICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgLy8gT3V0cHV0IHRoZSByZXN1bHQKICAgICAgICBjb3V0IDw8IHdpbl9jb3VudCA8PCBlbmRsOwogICAgfQoKICAgIHJldHVybiAwOwp9Cg==