#41. 백준 8958번 문제 풀이: OX퀴즈 | 문제 원본 보기 |
--입력-- 5 OOXXOXXOOO OOXXOOXXOO OXOXOXOXOXOXOX OOOOOOOOOO OOOOXOOOOXOOOOX --출력-- 10 9 7 55 30
문자열을 입력받고, 문자열에서 각 문자값을 확인해서 처리해 하는 문제이다. -- 총합 = 0 루프 (문자열 길이 만큼): if O면 점수카운터 증가, 총합+점수카운터 if X면 점수카운터 리셋(0) 출력:총합 --
n = int(input())
# 개수값을 입력받아 정수로 변환해서 n에 대입
for i in range(n): # n만큼 반복
s = input() # 문자열을 받음
sum = 0 # 점수합계 초기값 0
point = 0 # 연속점수, 초기값 0
for j in range(len(s)): # 문자열 길이 만큼 반복
if s[j] == 'O': # 정답(O)일 경우 포인트 인정
point += 1 # 포인트값 증가
sum += point # 점수합계에 더함
else: # 오답(X)의 경우 포인트 0으로 리셋
point = 0 # 포인트 리셋
print(sum) # 점수합계 출력