백준(BOJ) 8958 OX퀴즈

문제

👉 8959 OX퀴즈

풀이방법

입력된 문자열의 길이만큼 조회하면서 OX 여부를 판단한다.
만일 i번째 문자가 'O' 라면 현재까지 'O'의 연속된 갯수를 증가하고 점수를 합산한다.
문자가 'X'면 연속된 갯수를 초기화 한다.

코드

#include <iostream>
using namespace std;

int n;
string quiz;

int solve(string quiz) {
    int score = 0;
    int success = 0;
    for (int i = 0; i < quiz.length(); i++){
        if (quiz[i] == 'O') {
            success++;
            score += success;
        } else {
            success = 0;
        }
    }
    return score;
}

int main() {
    cin >> n;

    for (int i = 0; i < n; i++) {
        cin >> quiz;
        cout << solve(quiz) << endl;
    }
}

좋은 웹페이지 즐겨찾기