t = input()
(N,Q) = t.split(" ")
N = int(N)
Q = int(Q)

Bc = input()
B = []
for c in Bc:
    B.append(c)


for i in range(Q):
    l = int(input())
    s = input()

    q = 0
    ln = 0
    found = 0

    j = 0
    sfrom = -1
    while j < len(B):
        #print(B)

        if(isinstance(B[j], int)):
            l = B[j]
            while j + l < len(B) and isinstance(B[j + l], int):
                l += B[j + l]
            B[j] = l
            j += l
            continue

        if sfrom == -1:
            sfrom = j

        if B[j] != s[ln]:
            ln = 0
            sfrom = -1

        if B[j] == s[ln]:
            ln += 1
        
        if ln == len(s):
            found += 1
            B[sfrom] = j - sfrom + 1
            ln = 0
            sfrom = -1
        j += 1
    print(found)
        