Buggy python submission (verdict: Runtime Error):
# C - GeT AC
N, Q = map(int, input().split())
S = str(input())
A = [list(map(int, input().split())) for i in range(Q)]
S1 = [0]*N
count = 0
for j in range(len(S)):
    if S[j] == 'A' and S[j + 1] == 'C':
        count = +1
        S1[j] = count
    else:
        pass
for k in range(Q):
    print(sum(S1[A[k][0]-1:A[k][1]-1]))


Fixed submission:
# C - GeT AC
N, Q = map(int, input().split())
S = str(input())
A = [list(map(int, input().split())) for i in range(Q)]
S1 = [0]*N
count = 0
for j in range(1,len(S)):
    if S[j] == 'C' and S[j - 1] == 'A':
        count += 1
    else:
        pass
    S1[j] = count
#print(S1)

for k in range(Q):
    print(S1[A[k][1]-1]-S1[A[k][0]-1])

Buggy python submission (verdict: Runtime Error):
# C - GeT AC
N, Q = map(int, input().split())
S = str(input())
A = [list(map(int, input().split())) for i in range(Q)]
S1 = [0]*N
count = 0
for j in range(len(S)):
    if S[j] == 'A' and S[j + 1] == 'C':
        count = +1
        S1[j] = count
    else:
        pass
for i in range(Q):
    print(sum(S1[A[i][0]-1:A[i][1]-1]))

Fixed submission:
# C - GeT AC
N, Q = map(int, input().split())
S = str(input())
A = [list(map(int, input().split())) for i in range(Q)]
S1 = [0]*N
count = 0
for j in range(1,len(S)):
    if S[j] == 'C' and S[j - 1] == 'A':
        count += 1
    else:
        pass
    S1[j] = count
#print(S1)

for k in range(Q):
    print(S1[A[k][1]-1]-S1[A[k][0]-1])

Buggy python submission (verdict: Runtime Error):
# C - GeT AC
N, Q = map(int, input().split())
S = str(input())
A = [list(map(int, input().split())) for i in range(Q)]
S1 = []

for j in range(len(S)):
    if S[j] == 'A' and S[j + 1] == 'C':
        S1.append(j+1)
    else:
        pass
print(S1)
for i in range(Q):
    count = 0
    ans = [k for k in S1 if A[i][0] <= k < A[i][1]]
    print(len(ans))

Fixed submission:
# C - GeT AC
N, Q = map(int, input().split())
S = str(input())
A = [list(map(int, input().split())) for i in range(Q)]
S1 = [0]*N
count = 0
for j in range(1,len(S)):
    if S[j] == 'C' and S[j - 1] == 'A':
        count += 1
    else:
        pass
    S1[j] = count
#print(S1)

for k in range(Q):
    print(S1[A[k][1]-1]-S1[A[k][0]-1])

Buggy python submission (verdict: Runtime Error):
# C - GeT AC
N, Q = map(int, input().split())
S = str(input())
A = [list(map(int, input().split())) for i in range(Q)]
S1 = []

for j in range(len(S)):
    if S[j] == 'A' and S[j + 1] == 'C':
        S1.append(j+1)
    else:
        pass

for i in range(Q):
    count = 0
    for k in range(len(S1)):
        if A[i][0] <= S1[k] < A[i][1]:
            count += 1
        else:
            pass
    print(count)

Fixed submission:
# C - GeT AC
N, Q = map(int, input().split())
S = str(input())
A = [list(map(int, input().split())) for i in range(Q)]
S1 = [0]*N
count = 0
for j in range(1,len(S)):
    if S[j] == 'C' and S[j - 1] == 'A':
        count += 1
    else:
        pass
    S1[j] = count
#print(S1)

for k in range(Q):
    print(S1[A[k][1]-1]-S1[A[k][0]-1])

Buggy python submission (verdict: Time Limit Exceeded):
# C - GeT AC
N, Q = map(int, input().split())
S = str(input())
A = [list(map(int, input().split())) for i in range(Q)]

for i in range(Q):
    count = 0
    for j in range(A[i][0]-1,A[i][1]-1):
        if S[j] == 'A' and S[j+1] == 'C':
            count += 1
        else:
            pass
    print(count)

Fixed submission:
# C - GeT AC
N, Q = map(int, input().split())
S = str(input())
A = [list(map(int, input().split())) for i in range(Q)]
S1 = [0]*N
count = 0
for j in range(1,len(S)):
    if S[j] == 'C' and S[j - 1] == 'A':
        count += 1
    else:
        pass
    S1[j] = count
#print(S1)

for k in range(Q):
    print(S1[A[k][1]-1]-S1[A[k][0]-1])