← Home
package main

import (
	"bufio"
	"fmt"
	"os"
	"sort"
	"strconv"
)

func main() {
	scanner := bufio.NewScanner(os.Stdin)
	scanner.Split(bufio.ScanWords)
	buf := make([]byte, 1024*1024)
	scanner.Buffer(buf, 10*1024*1024)

	nextInt := func() int {
		scanner.Scan()
		n, _ := strconv.Atoi(scanner.Text())
		return n
	}

	if !scanner.Scan() {
		return
	}
	t, _ := strconv.Atoi(scanner.Text())

	writer := bufio.NewWriter(os.Stdout)
	defer writer.Flush()

	for i := 0; i < t; i++ {
		n := nextInt()
		e := make([]int, n)
		for j := 0; j < n; j++ {
			e[j] = nextInt()
		}

		sort.Ints(e)

		groups := 0
		curr := 0
		for j := 0; j < n; j++ {
			curr++
			if curr >= e[j] {
				groups++
				curr = 0
			}
		}
		fmt.Fprintln(writer, groups)
	}
}