8958번: OX퀴즈백준/문제2023. 7. 28. 13:52
Table of Contents
문제 출처 : https://www.acmicpc.net/problem/8958
언어 : Kotlin
문제 설명 :
"OOXXOXXOOO"와 같은 OX퀴즈의 결과가 있다. O는 문제를 맞은 것이고, X는 문제를 틀린 것이다. 문제를 맞은 경우 그 문제의 점수는 그 문제까지 연속된 O의 개수가 된다. 예를 들어, 10번 문제의 점수는 3이 된다.
"OOXXOXXOOO"의 점수는 1+2+0+0+1+0+0+1+2+3 = 10점이다.
OX퀴즈의 결과가 주어졌을 때, 점수를 구하는 프로그램을 작성하시오.
- 첫째 줄에 테스트 케이스의 개수가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있고, 길이가 0보다 크고 80보다 작은 문자열이 주어진다. 문자열은 O와 X만으로 이루어져 있다.
- 각 테스트 케이스마다 점수를 출력한다.
제한 사항 :
- 시간 제한 : 1초
- 메모리 제한 : 128MB
입출력 예 :
입력 | 출력 |
5 OOXXOXXOOO OOXXOOXXOO OXOXOXOXOXOXOX OOOOOOOOOO OOOOXOOOOXOOOOX |
10 9 7 55 30 |
풀이 :
import java.io.*
fun main() {
val br = BufferedReader(InputStreamReader(System.`in`))
val bw = BufferedWriter(OutputStreamWriter(System.out))
repeat(br.readLine().toInt()) {
val result = br.readLine().chunked(1)
var score = 0
var continuity = 0
for (i in result.indices) {
if (result[i] == "O") {
continuity++
score += continuity
} else {
continuity = 0
}
}
bw.appendLine("$score")
}
bw.flush()
bw.close()
}
'백준 > 문제' 카테고리의 다른 글
1259번: 펠린드롬수 (0) | 2023.07.31 |
---|---|
10250번: ACM 호텔 (0) | 2023.07.28 |
2920번: 음계 (0) | 2023.07.28 |
2741번: N 찍기 (0) | 2023.07.28 |
2741번: 숫자의 개수 (0) | 2023.07.28 |
@스몰스테핑 :: 작은 발걸음
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!