좌충우돌 개발자의 길

백준 알고리즘 | 8958번 (OX퀴즈) | 파이썬 본문

CODING TEST/백준

백준 알고리즘 | 8958번 (OX퀴즈) | 파이썬

sustronaut 2021. 7. 10. 17:41

8958번 (OX퀴즈) *

  • "OOXXOXXOOO"와 같은 OX퀴즈의 결과가 있다. O는 문제를 맞은 것이고, X는 문제를 틀린 것이다. 문제를 맞은 경우 그 문제의 점수는 그 문제까지 연속된 O의 개수가 된다. 예를 들어, 10번 문제의 점수는 3이 된다.
  • "OOXXOXXOOO"의 점수는 1+2+0+0+1+0+0+1+2+3 = 10점이다.
  • OX퀴즈의 결과가 주어졌을 때, 점수를 구하는 프로그램을 작성하시오.
a = int(input())
for i in range(a):
    b = input()
    s = list(b)
    sum = 0
    c = 1
    for i in s:
        if i == 'O':
            sum += c
            c += 1
        else:
            c = 1
    print(sum)

새롭게 배운 것

  • 배열명.len() : 리스트의 전체 개수 세기
  • str에 list()를 씌어주면 문자 하나하나 잘라서 배열을 만듦
  • for i in s: 처럼 리스트를 in 안에 집어넣어 for문으로 돌릴 수 있다.