대학교/Algorithm

[백준 1543] 문서 검색

SWKo 2020. 8. 24. 01:52

0. 제목

  • 백준 1543 문서 검색
  • BOJ 1543 문서 검색
  • Python 1543 문서 검색

1. 문제

https://www.acmicpc.net/problem/1543

 

1543번: 문서 검색

세준이는 영어로만 이루어진 어떤 문서를 검색하는 함수를 만들려고 한다. 이 함수는 어떤 단어가 총 몇 번 등장하는지 세려고 한다. 그러나, 세준이의 함수는 중복되어 세는 것은 빼고 세야 한�

www.acmicpc.net


2. 풀이

  • 문자열 비교 중 단어가 문서의 범위를 넘어가면 안되므로 문서의 길이에서 시작인덱스를 뺀 값이 단어의 길이보다 크거나 같은 경우 반복문을 수행한다.
  • 검사시작 index에서부터 단어의 길이만큼 문자열과 단어가 같으면 일치개수를 1증가시키고 검사 index를 단어길이만큼 증가시킨다.
  • 단어가 같지 않은 경우, index만 1 증가시킨다.

3. 코드

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
doc = input()
word = input()
 
index = 0
cnt = 0
 
while len(doc) - index >= len(word):
    if doc[index:index+len(word)] == word:
        cnt += 1
        index += len(word)
    else:
        index += 1
 
print(cnt)