신입 개발자가 되기 위해 공부했던 독학 자료들/Java 연습문제 (백준)
[백준/자바] 8958번: OX퀴즈
Seojoo21
2022. 1. 29. 20:07
1. 문제
https://www.acmicpc.net/problem/8958
8958번: OX퀴즈
"OOXXOXXOOO"와 같은 OX퀴즈의 결과가 있다. O는 문제를 맞은 것이고, X는 문제를 틀린 것이다. 문제를 맞은 경우 그 문제의 점수는 그 문제까지 연속된 O의 개수가 된다. 예를 들어, 10번 문제의 점수
www.acmicpc.net
2. 내 코드
실패
3. 다시 체크하고 넘어갈 부분
1. 이 문제의 알고리즘 이해하기
출처: https://st-lab.tistory.com/50
1.1 이중 반복문 익히기
1.2 이차원 배열이 아니더라도 일차원 배열에서도 인덱스를 참조변수로 쓸 수 있다는 점 기억하기
import java.io.*;
import java.util.Arrays;
public class Main {
public static void main(String[] args) throws NumberFormatException, IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder();
int C = Integer.parseInt(br.readLine());
String[] arr = new String[C];
for(int i=0; i<arr.length; i++) {
arr[i] = br.readLine();
}
// System.out.println(Arrays.toString(arr)); // 1. 입력값들을 하나의 배열에 넣기
for(int i=0; i<arr.length; i++) {
int count = 0;
int sum = 0;
for (int j=0; j<arr[i].length();j++) { // 2. 배열 내 모든 요소를 대상으로 하나씩 실행한다.
if(arr[i].charAt(j) == 'O') {
count++;
}
else {
count = 0;
}
sum += count;
}
sb.append(sum).append('\n'); // 3.2번에서 나온 sum 값을 sb에 차곡차곡 넣어둔다.
}
System.out.print(sb);
}
}