알고리즘 및 자료구조
[백준] 1543번 문제 / 문서 검색
JosephCha
2022. 9. 6. 19:11
백준 문제 링크: https://www.acmicpc.net/problem/1543
1543번: 문서 검색
세준이는 영어로만 이루어진 어떤 문서를 검색하는 함수를 만들려고 한다. 이 함수는 어떤 단어가 총 몇 번 등장하는지 세려고 한다. 그러나, 세준이의 함수는 중복되어 세는 것은 빼고 세야 한
www.acmicpc.net
입력
첫째 줄에 문서가 주어진다. 문서의 길이는 최대 2500이다. 둘째 줄에 검색하고 싶은 단어가 주어진다. 이 길이는 최대 50이다. 문서와 단어는 알파벳 소문자와 공백으로 이루어져 있다.
출력
첫째 줄에 중복되지 않게 최대 몇 번 등장하는지 출력한다.
예제 입력 1 복사
ababababa
aba
예제 출력 1 복사
2
예제 입력 2 복사
a a a a a
a a
예제 출력 2 복사
2
코드
import Foundation
var document = readLine()!
let word = readLine()!
var index = document.range(of: word)?.upperBound // document에서 word가 있을때, word의 마지막 index
var result: Int = 0
while index != nil {
result += 1
document = String(document[index!...])
index = document.range(of: word)?.upperBound // document에서 다음 word가 없을경우 nil
}
print(result)