728x90
import java.util.*;
import java.io.*;
class Main {
public static void main(String args[]) throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder();
int num = Integer.parseInt(br.readLine());
String ox[] = new String[num];
for(int i=0; i<num; i++){
ox[i] = br.readLine();
int cnt = 0;
int tmpcnt = 0;
for(int j=0; j<ox[i].length(); j++){
if(ox[i].charAt(j)=='X'){
tmpcnt = 0;
}else{
tmpcnt += 1;
cnt = cnt + tmpcnt;
}
}
sb.append(cnt+"\n");
}
br.close();
System.out.println(sb);
}
}
읽기 - BufferedReader
출력 - StringBuilder
첫 번째 라인의 숫자를 읽어서 num 변수에 넣는다.
String형 배열을 num 크기만큼 선언한다.
num만큼 반복하면서 라인을 읽어 배열 ox에 저장한다.
출력할 총 점수(cnt) 와 연속된 'O' 일 경우 +될 점수(tmpcnt)를 초기화 한다.
ox 배열 안에 string의 길이만큼 반복하며
문자열에 문자 하나씩 'X' 인지 검사한다.
'X'이면 tmpcnt를 0으로 만들어주고, 아니면 tmpcnt를 더해준다.
결과를 StringBuilder를 이용해 저장하고 마지막에 출력한다.
728x90
'알고리즘 with JAVA' 카테고리의 다른 글
백준 15596번 정수 N개의 합 (함수) (0) | 2021.03.31 |
---|---|
백준 4344번 평균은 넘겠지 - BufferedReader, StringBuilder, StringToKenizer, String.format (0) | 2021.03.31 |
백준 1546번 문제 : 평균 (BufferedReader, StringTokenizer) 사용 (0) | 2021.03.26 |
백준 3052번 : 나머지 자바 HashSet 사용 (0) | 2021.03.26 |
백준 11021번 A+B - 7 JAVA (0) | 2021.01.03 |