import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String arr = new String();
int test_case = sc.nextInt();
int sum = 1; // 정답일 경우 result와 합하기 위해 선언.
int result = 0;
for(int i = 0 ; i < test_case ; i++) {
arr = sc.next();
for(int j = 0 ; j < arr.length(); j++) {
char ch = arr.charAt(j);
if(ch == 'O') { // 'O'일 때
result += sum;
sum++; // j+1 이 'O'일 경우를 위해 증가연산자로 1 증가
}else { // 'X'일 때
result += 0; // j가 'X'이면 틀린 경우이므로 0을 더함
sum = 1; // 'X'이므로 sum이 증가하지 않고 다음 연산을 위해 1로 초기화
}
}
System.out.println(result);
sum = 1;
result = 0; // 다음 테스트 케이스를 위해 sum과 result를 초기화
}
}
}
선언한 배열에 입력을 받고 하나씩 꺼내서 'O' , 'X'를 판별하여 값을 구한다.
'문제풀이 > 백준' 카테고리의 다른 글
백준 10773. 제로(JAVA) (1) | 2022.03.11 |
---|---|
백준 10828. 스택(JAVA) (0) | 2022.03.10 |
백준 11399. ATM(JAVA) (0) | 2022.03.07 |
백준 2839. 설탕 배달(JAVA) (0) | 2022.03.07 |
백준 2490. 윷놀이(JAVA) (0) | 2022.03.06 |