문제 분석

- 해당 문제 조건에 따라 배열에 점수를 계산해준다.

 

 

문제 풀이

1) O일 경우 점수가 누적된다. X일 경우 점수를 초기화해준다.

2) 점수를 더하여 출력한다.

 

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.Arrays;
import java.util.StringTokenizer;

public class Main {
	private static int tc, score, ans;
	private static int[] arr;

	public static void main(String[] args) throws Exception {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		StringTokenizer st;

		tc = Integer.parseInt(br.readLine());

		for (int i = 0; i < tc; i++) {
			score = 0; // 점수 초기화
			ans = 0;
			String s = br.readLine();

			arr = new int[s.length()];
			for (int j = 0; j < s.length(); j++) {
				if (s.charAt(j) == 'O') {
					arr[j] = ++score;
				} else {
					score = 0;
				}

			}
			count();
		}

	}// main
	private static void count() {
		for(int i=0;i<arr.length;i++) {
			ans += arr[i];
		}
		System.out.println(ans);
	}
}// class-end

'Algorithm > BOJ' 카테고리의 다른 글

BOJ 2851 슈퍼마리오  (0) 2021.03.04
BOJ 1592 영식이와친구들  (0) 2021.03.04
BOJ 3052 나머지  (0) 2021.03.04
BOJ 3985 롤케이크  (0) 2021.03.04
BOJ 2798 블랙잭  (0) 2021.03.03