알고리즘/백준

[파이썬] BOJ_8958(OX퀴즈)

딱따구르리 2023. 5. 21. 19:15
728x90
반응형

문제

 

https://www.acmicpc.net/problem/8958

 

8958번: OX퀴즈

"OOXXOXXOOO"와 같은 OX퀴즈의 결과가 있다. O는 문제를 맞은 것이고, X는 문제를 틀린 것이다. 문제를 맞은 경우 그 문제의 점수는 그 문제까지 연속된 O의 개수가 된다. 예를 들어, 10번 문제의 점수

www.acmicpc.net

 


 

해설

O가 연속해서 나오면 해당 문제의 점수는 연속된 O의 개수가 되기 때문에

다음 문제가 정답(O)인지 / 오답(X)인지 체크해야 한다.

 

쉽게 O의 개수를 체크하는 변수를 만들어 연속되면 +1을 해주고 

그렇게 만들어진 변수의 값을 총 점수를 구하는 변수에 더해주면 된다.

 


코드

 

-파이썬

#백준 8958(OX퀴즈)

n = int(input())

for i in range(n):
    t = list(input())
    cnt, res = 0, 0  #연속되는 O의 개수, 총 점수
    for j in t:
        if j == "O":
            cnt += 1
            res += cnt
        else:
            cnt = 0
    print(res)
728x90
반응형

'알고리즘 > 백준' 카테고리의 다른 글

[파이썬] BOJ_2309(일곱 난쟁이)  (0) 2023.05.27
[파이썬] BOJ_2231(분해합)  (0) 2023.05.23
[파이썬] BOJ_17608(막대기)  (0) 2022.11.07
[파이썬] BOJ_1212(8진수 2진수)  (0) 2022.08.13
[파이썬] BOJ_2745(진법 변환)  (0) 2022.08.12