import java.io.*;
import java.math.*;
import java.util.*;
import java.text.*;

public class b {
    public static void main(String[] args) {
        Scanner sc = new Scanner(new BufferedInputStream(System.in));

        int T = sc.nextInt();

        for (int casenumber = 1; casenumber <= T; ++casenumber) {

            int n = sc.nextInt();
            int s = sc.nextInt();
            int p = sc.nextInt();

            int[] ts = new int[n];
            for (int i = 0; i < n; ++i)
                ts[i] = sc.nextInt();

            int thresh1 = (p == 1 ? 1 : (3 * p - 4));
            int thresh2 = (3 * p - 2);

            int count1 = 0, count2 = 0;

            for (int i = 0; i < n; ++i) {
                if (ts[i] >= thresh2) {
                    ++count2;
                    continue;
                }
                if (ts[i] >= thresh1) {
                    ++count1;
                }
            }

            if (count1 > s) {
                count1 = s;
            }

            System.out.format("Case #%d: %d%n", casenumber, count1 + count2);
        }
    }
}

package com.jp.common;

import com.codejam.two12.tongue.Googlerese;

public class ExecutorApp {
  
  /**
   * @param args
   */
  public static void main(String[] args) {
    // TODO Auto-generated method stub
  // String inputFileName = "/Users/joekumar/Documents/workspace/CodeJam/src/com/jp/data/sample_input.txt";
  // String outputFileName = "/Users/joekumar/Documents/workspace/CodeJam/src/com/jp/data/sample_output.txt";
    String inputFileName = "/Users/joekumar/Downloads/B-small-attempt1.in";
    String outputFileName = "/Users/joekumar/Desktop/output/sample_output.txt";
    InputOutputProcessor inputOutputProcessor = new InputOutputProcessor();
    inputOutputProcessor.initializeInput(inputFileName);
    int numberOfCases = inputOutputProcessor.getNumberOfCases();
    
    String[] resultArray = new String[numberOfCases];
    inputOutputProcessor.setDoesInputHaveDataSetLines(false);
    inputOutputProcessor.setNumberOfDataSetLines(1);
    
    
  //  Googlerese.init();
    
    for (int i = 1; i <= numberOfCases; i++) {
      
      try {
        String[] dataSet = inputOutputProcessor.getDataSet();
       
       /* BotTrust botTrust = new BotTrust();
       int result =  botTrust.findRequiredSeconds(dataSet);
       String resultCase = "Case #"+ i + ": "+ result;
       resultArray[i-1] = resultCase;
       System.out.println(resultCase);*/
        Puzzle puzzle = PuzzleFactory.getPuzzleSolution("GooglerDance");
        String[] result = puzzle.solve(dataSet);
        String resultCase = "Case #"+ i + ": "+ result[0] ;
        System.out.println(resultCase);
        resultArray[i-1] = resultCase;
        
      }
      
      catch (Exception exp) {
        exp.printStackTrace();
        inputOutputProcessor.closeScanner();
      }
      
    }
    
    inputOutputProcessor.closeScanner();
    inputOutputProcessor.writeOutput(outputFileName, resultArray);
   
  }
  
}
