hyunynim   5년 전

C++의 string 그리고 string의 find를 이용해서 구현하였습니다.

먼저 문서와 단어에는 공백이 포함될 수 있으므로 fgets를 이용하여 두 문자열을 입력받습니다.

그리고 \n이 포함되어 의도치 않은 결과를 나타낼까하여 없애준 후 str1(문서)에서 str2(단어)를 찾이 못할 때까지

문서에서 단어를 지워가며(str2를 처음으로 찾아낸 인덱스에서부터 str2의 길이만큼) res를 증가시키며 반복하고 출력해줍니다.

풀이과정에 문제가 있다면 지적해주시면 너무나도 감사하겠습니다.

zlzmsrhak   5년 전

반례는 아래에 있습니다. (답: 1, 출력: 2)

단어만 지우고 처음부터 찾으면 단어가 연속한 글자들로 이루어지지 않을 수 있어 틀린 알고리즘입니다.


hyunynim   5년 전

답변 너무 감사합니다! 해결하였습니다~

댓글을 작성하려면 로그인해야 합니다.