import itertools
import numpy as np
N = int(input())
S = [i for i in list(input())]
Q = int(input())
k = [int(i) for i in input().split()]
S = np.array(S, dtype=None)
 
index_D = np.where(S == 'D')[0]
index_M = np.where(S == 'M')[0]
index_C = np.where(S == 'C')[0]
xx, yy, zz = np.meshgrid(index_D, index_M, index_C)
a_b_c = np.c_[xx.ravel(), yy.ravel(), zz.ravel()]

for k_i in k:
    count = 0
    for abc in a_b_c:
        if abc[0] < abc[1] < abc[2] and abc[2] - abc[0] < k_i:
            count += 1
    print(count)
    