문자열 문제를 거의 풀어보지 않아서 맞게 푼 건지 잘 모르겠다.
s문자열 안에 임의의 x에 대하여 가장 긴 Px를 찾고 그 Px들을 확인하면서 카운팅하는 식으로 풀었다.
# 5525
import sys
n = int(sys.stdin.readline())
m = int(sys.stdin.readline())
s = list(sys.stdin.readline().rstrip())
dp = []
flag = 0
for i in range(m):
if i > 0 and s[i] == s[i-1] and flag:
dp.append((flag-1) // 2)
flag = 0
if s[i] == 'I' and not flag:
flag = 1
continue
if i > 0 and s[i] != s[i-1] and flag:
flag += 1
if flag:
dp.append((flag-1) // 2)
res = 0
for i in dp:
if i >= n:
res += (i-n+1)
print(res)