문제
"OOXXOXXOOO"와 같은 OX퀴즈의 결과가 있다. O는 문제를 맞은 것이고, X는 문제를 틀린 것이다. 문제를 맞은 경우 그 문제의 점수는 그 문제까지 연속된 O의 개수가 된다. 예를 들어, 10번 문제의 점수는 3이 된다.
"OOXXOXXOOO"의 점수는 1+2+0+0+1+0+0+1+2+3 = 10점이다.
OX퀴즈의 결과가 주어졌을 때, 점수를 구하는 프로그램을 작성하시오.
--
이 문제의 포인트는 연속된 'O'의 점수가 중첩되게 만들어야하는거네요
중첩 for문으로 만들어줍니다
import sys
test_case=int(sys.stdin.readline().rstrip())
list=[]
for i in range(test_case): #테스트 케이스만큼 돌기
list=sys.stdin.readline().rstrip()
score=0
sum=1 #아래 for문이 한번 돌면 다시 sum은 1로 초기회
for i in range(len(list)):
if list[i]=="O":
score+=sum
sum+=1
else:
sum=1
print(score)
'BAEKJOON,백준' 카테고리의 다른 글
[파이썬] BAEKJOON #8393번 합 구하기 (0) | 2021.09.22 |
---|