코딩

[Atcoder] ABC 327 C - Consecutive

척척석사아님 2023. 11. 16. 00:41
728x90

 

정말 안 떠올라서 마지막에 겨우겨우 붙잡고 풀었네요 ....

 

문제는, 주어진 문자열의 부분문자열에 대해서 같은 알파벳이 연달아 두번 나오는 횟수는 몇번인가? 라는 문제입니다.

 

누적합에 대한 내용이 되겠습니다.

import sys
input = sys.stdin.readline
N,Q = map(int,input().split())
S = input().rstrip()
result = [0]
cnt = 0
for i in range (1,len(S)):
    if S[i] == S[i-1]:
        cnt += 1
        result.append(cnt)
    else:
        result.append(cnt)
for i in range (0,Q):
    l,r = map(int,input().split())
    print(result[r-1] - result[l-1])

 

생각보다 되게 단순한거였는데 너무 복잡하게 생각해버려서 아쉬웠네요.

'코딩' 카테고리의 다른 글

[Atcoder] ABC 329 D - Take Election Quick Report  (1) 2023.11.20
[Atcoder] ABC 327 D - Take ABC  (1) 2023.11.16
[Programmers] 구명보트  (0) 2023.11.08
[BOJ] 1932 정수삼각형 Python  (1) 2023.11.03
[Atcoder] ABC 326 C - Peak  (1) 2023.10.29