package main
import (
"bufio"
"fmt"
"os"
"sort"
)
func main() {
in := bufio.NewReader(os.Stdin)
out := bufio.NewWriter(os.Stdout)
defer out.Flush()
var t int
if _, err := fmt.Fscan(in, &t); err != nil {
return
}
for ; t > 0; t-- {
var n int
fmt.Fscan(in, &n)
evens := make([]int64, 0)
var maxOdd int64 = -1
for i := 0; i < n; i++ {
var x int64
fmt.Fscan(in, &x)
if x%2 == 1 {
if x > maxOdd {
maxOdd = x
}
} else {
evens = append(evens, x)
}
}
if maxOdd == -1 || len(evens) == 0 {
fmt.Fprintln(out, 0)
continue
}
sort.Slice(evens, func(i, j int) bool { return evens[i] < evens[j] })
var ans int64 = 0
m := maxOdd
for _, x := range evens {
if x > m {
ans++
m += x
}
ans++
m += x
}
fmt.Fprintln(out, ans)
}
}