5586번: JOI와 IOI백준/문제2024. 1. 10. 14:50
Table of Contents
문제 출처 : https://www.acmicpc.net/problem/5586
언어 : Kotlin
문제 설명 :
입력으로 주어지는 문자열에서 연속으로 3개의 문자가 JOI 또는 IOI인 곳이 각각 몇 개 있는지 구하는 프로그램을 작성하시오. 문자열은 알파벳 대문자로만 이루어져 있다. 예를 들어, 아래와 같이 "JOIOIOI"에는 JOI가 1개, IOI가 2개 있다.
입력 :
첫째 줄에 알파벳 10000자 이내의 문자열이 주어진다.
출력 :
첫째 줄에 문자열에 포함되어 있는 JOI의 개수, 둘째 줄에 IOI의 개수를 출력한다.
제한 사항 :
- 시간 제한 : 1초
- 메모리 제한 : 128MB
입출력 예 :
입력 | 출력 |
JOIJOI | 2 0 |
JOIOIOIOI | 1 3 |
JOIOIJOINXNXJIOIOIOJ | 2 3 |
풀이 :
import java.io.BufferedWriter
import java.io.OutputStreamWriter
fun main() = with(System.`in`.bufferedReader()) {
val bw = BufferedWriter(OutputStreamWriter(System.out))
val cnt = IntArray(2) { 0 }
readLine().also {
for (i in 0 until it.length - 2) {
if (it[i] == 'J' && it[i + 1] == 'O' && it[i + 2] == 'I') cnt[0]++
if (it[i] == 'I' && it[i + 1] == 'O' && it[i + 2] == 'I') cnt[1]++
}
}
cnt.forEach { bw.appendLine("$it") }
bw.flush()
bw.close()
}
'백준 > 문제' 카테고리의 다른 글
2075번: N번째 큰 수 (0) | 2024.01.11 |
---|---|
16916번: 부분 문자열 (0) | 2024.01.10 |
1958번: LCS 3 (0) | 2024.01.09 |
11328번: Strfry (0) | 2024.01.08 |
1254번: 팰린드롬 만들기 (1) | 2024.01.08 |
@스몰스테핑 :: 작은 발걸음
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!