package main
import (
"fmt"
)
type Trie struct {
son [26]*Trie
cnt int
}
func (t *Trie) Insert(s string) {
node := t
for i := range s {
c := int(s[i] - 'a')
if node.son[c] == nil {
node.son[c] = &Trie{}
}
node.son[c].cnt++
node = node.son[c]
}
}
func (t *Trie) CountPrefix(s string) int {
node := t
for i := range s {
c := int(s[i] - 'a')
if node.son[c] == nil {
return 0
}
node = node.son[c]
}
return node.cnt
}
func main() {
var n int
fmt.Scan(&n)
t := &Trie{}
for i := 0; i < n; i++ {
var s string
fmt.Scan(&s)
t.Insert(s)
}
var q int
fmt.Scan(&q)
for i := 0; i < q; i ++ {
var s string
fmt.Scan(&s)
fmt.Println(t.CountPrefix(s))
}
}