Algorithms 🚀/Baekjoon

[백준/8958번] OX퀴즈

728x90

www.acmicpc.net/problem/8958

 

8958번: OX퀴즈

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

www.acmicpc.net

퀴즈의 점수를 구하는 간단한 문제이다. (사실 조금 헤맸음 ㅋㅋ)

 

OX퀴즈의 결과를 입력받고 "O"인 경우에는 score를 1점씩 늘려가면서 최종 점수에 더했고,

"X"가 나오는 경우에는 score를 0으로 초기화 하였다. 정말 간단한 문제였는데 헤매서 슬펐다...

그리고 점수가 누적되는 것을 방지하기 위해서 for문 바로 다음에 score, sum을 0으로 초기화 해주었다.

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main {
	public static void main(String[] args) throws IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		int N = Integer.parseInt(br.readLine());
		
		int sum = 0;
		int score = 0;
		String[] arr = null;
		
		for(int i=0; i<N; i++) {
			sum = 0;
			score = 0;
			String str = br.readLine();
			
			arr = new String[str.length()];
			arr = str.split("");
			
			for(int j=0; j<arr.length; j++) {
				if(arr[j].equals("O")) {
					score++;
					sum += score;
				}else if(arr[j].equals("X")) {
					score = 0;
				}
			}
			System.out.println(sum);
		}
		br.close();
	}
}

 

728x90