11008번: 복붙의 달인백준/문제2024. 5. 21. 01:05
Table of Contents
문제 출처 : https://www.acmicpc.net/problem/11008
언어 : Kotlin
문제 설명 :
한신이는 대학교에서 "복붙의 달인"으로 유명하다. 한신이는 타이핑 속도가 느리기 때문에 대학에서 가능한 모든 일을 복붙으로 해결한다. 그는 n개의 문자를 입력하는데 있어서 n초의 시간이 걸리지만 뛰어난 "붙여넣기" 스킬을 이용하면 어떠한 개수의 문자도 단 1초만에 타이핑 할 수 있다. 만약 한신이가 "bana"를 복사한 상태에서 "banana"를 타이핑한다면, "bana" 붙여넣기 1초, 'n' 입력, 'a' 입력으로 총 3초가 걸린다. 한신이가 클립보드에 저장한 p를 알고 있을 때 s를 입력하는데 걸리는 최소 시간을 계산해보자!
입력 :
첫 번째 줄에는 테스트케이스의 개수 T(T ≤ 25)가 입력된다. 각 테스트케이스는 한 줄에 2개의 문자열 s와 p가 공백으로 구분되어 입력되며 한신이는 p를 복사하여 s를 만들어 내는 것을 목표로 한다. s의 최대 길이는 10,000이고, p의 최대 길이는 100이다.
출력 :
각 테스트 케이스에 맞는 한신이가 p를 이용하여 s를 타이핑할 때 걸리는 최소 시간(초 단위)을 출력하라!
제한 사항 :
- 시간 제한 : 2초
- 메모리 제한 : 256MB
입출력 예 :
입력 | 출력 |
2 banana bana asakusa sa |
3 5 |
풀이 :
import java.io.BufferedReader
import java.io.BufferedWriter
import java.io.InputStreamReader
import java.io.OutputStreamWriter
fun main() = with(BufferedReader(InputStreamReader(System.`in`))) {
val bw = BufferedWriter(OutputStreamWriter(System.out))
val n = readLine().toInt()
repeat(n) {
val (s, p) = readLine().split(" ")
bw.appendLine("${s.replace(p, "0").count()}")
bw.flush()
}
bw.close()
}
'백준 > 문제' 카테고리의 다른 글
26264번: 빅데이터? 정보보호! (0) | 2024.05.22 |
---|---|
3111번: 검열 (0) | 2024.05.22 |
25630번: 팰린드롬 소떡소떡 (0) | 2024.05.21 |
15886번: 내 선물을 받아줘 2 (0) | 2024.05.21 |
6841번: I Speak TXTMSG (0) | 2024.05.20 |
@스몰스테핑 :: 작은 발걸음
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!