STUDY 📖/코딩 테스트

[백준] 단계별로 풀어보기 27일차 8958번

힘히힘 2021. 8. 10. 00:05
반응형

매일코딩 : 21년 08월 09일 (27일 차)

🚩출처 백준 코딩

 

 

어제코딩 : [백준] 단계별로 풀어보기 26일차 1546번

 

이 문제는 대략 삼일 고민했다. ㅜㅜㅜ 휴,ㅡ, , 그래도 다행이 풀었다 ㅎㅎ,,

 

OX퀴즈 

#문제 8958번

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

"OOXXOXXOOO"의 점수는 1+2+0+0+1+0+0+1+2+3 = 10점이다.

OX퀴즈의 결과가 주어졌을 때, 점수를 구하는 프로그램을 작성하시오.

 

출력:

각 테스트 케이스마다 점수를 출력한다.

먼저 저 값들이 한번에 입력 받는 다는 점. 

(전에 것들은 묶음 으로 여러번 테스트 했움)

난해한  OXOXOXXOO 퀴즈가 날 혼란스럽게 했다....

 

 

내답변:

num=int(input())

for i in range(0,num):
    test=list(input())
    k=list(range(0,len(test)))
    a=0
    n=0
    while n <len(test):
        if test[n] !='X':
            a+=1
            k[n]=a
            n+=1
        else:
            a=0
            k[n]=0
            n+=1
            continue
    print(sum(k))

코드가 좀 길고 너저분해 보이지만... 아주 쉬운 수준에서 생각해서 풀어낸 것 같다...