package dancinggooglers;

import java.io.File;
import java.util.Scanner;

public class DanceScoreCalculator {


    public static void main(String[] args) {
        if(args.length <= 0 || args[0] == null) {
            System.out.println("You must enter a file to read");
            System.out.println("Usage: blah <filename>");
            System.exit(0);
        }

        File argFile = new File(args[0]);
        try {
            Scanner googleSpeakScanner = new Scanner(argFile);
            String firstLine = googleSpeakScanner.nextLine();
            Integer linesToScan = new Integer(firstLine);
            for(int i = 1; i <= linesToScan; i++) {
                String googleDancerLine = googleSpeakScanner.nextLine();
                DanceScoreCase danceCase = new DanceScoreCase(googleDancerLine);
                System.out.println(String.format("Case #%d: %d", i, danceCase.maxDancersThatCouldPass()));
            }
        }
        catch (Exception e) {
            e.printStackTrace();
        }
    }
}

import java.util.Scanner;

public class B {

	private static Scanner in = new Scanner(System.in);

	private static void solve(int no) {
		int N = in.nextInt();
		int S = in.nextInt();
		int p = in.nextInt();

		int ans = 0;
		for (int i = 0; i < N; i++) {
			int sum = in.nextInt();
			int avr = sum / 3;
			int rem = sum % 3;
			switch (rem) {
			case 0:
				if (avr >= p) {
					ans++;
				} else if (S > 0 && avr > 0 && avr + 1 >= p) {
					ans++;
					S--;
				}
				break;
			case 1:
				if (avr + 1 >= p) {
					ans++;
				}
				break;
			case 2:
				if (avr + 1 >= p) {
					ans++;
				} else if (S > 0 && avr + 2 >= p) {
					ans++;
					S--;
				}
				break;
			}
		}
		System.out.printf("Case #%d: %d%n", no, ans);
	}

	public static void main(String[] args) {
		int T = in.nextInt();
		for (int i = 0; i < T; i++) {
			solve(i + 1);
		}
	}

}
