개발 연습장/백준 문제풀이

[파이썬, Python] 백준 8598: OX퀴즈

LooanCheong 2022. 11. 27. 13:47
반응형

문제

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

 

8958번: OX퀴즈

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

www.acmicpc.net

코드

N = int(input())
for i in range(N):
    OX_list = list(input())
    score = 0
    totalscore = 0
    for OX in OX_list:
        if OX == 'O':
            score += 1
            totalscore += score
        else:
            score = 0
    print(totalscore)

설명

우선 테스트 케이스의 개수를 N을 통해 입력 받아준다.

이후 N의 수만큼 테스트 케이스를 확인하는데,
OX퀴즈의 점수를 리스트 형식으로 받아준다.

점수 항목을 2개로 나눠서 만들어 주는데,
하나는 각 항목마다 추가해서 더해줄 점수를 만들어주고(연속 정답시 +1)
하나는 총점을 만들어준다.

만약 O가 반복해서 나온다면 score를 1 올려주며 계속 totalscore에 더해준다.
X가 나오게 된다면 score를 0으로 초기화해준다.

이후 총점을 출력하면 된다.

반응형