Sunday, January 30, 2022

USACO December 2021 Bronze Problem 1: Lonely Photo (version 2)

# Problem1.py

N = int(input())
lineup = input()
answer = 0

for i in range(N):

    lhs = 0
    if (i>0 and lineup[i-1]!=lineup[i]):
        lhs+=1
        for k in range(i-2,-1,-1):
            if (lineup[k]==lineup[i-1]):
                lhs+=1
            else:
                break

    rhs=0
    if (i+1<N and lineup[i+1]!=lineup[i]):
        rhs+=1
        for k in range(i+2,N):
            if (lineup[k]==lineup[i+1]):
                rhs+=1
            else:
                break

    answer += lhs*rhs + max(lhs-1,0) + max(rhs-1,0)
                
print(answer, end="")