코딩테스트/백준

[파이썬]1543_문서_검색_백준_S4

sunNprize 2022. 3. 25. 15:57
"""
 *packageName    : 
 * fileName       : 1543_문서_검색_S4
 * author         : qkrtk
 * date           : 2022-03-25
 * description    :
 * ===========================================================
 * DATE              AUTHOR             NOTE
 * -----------------------------------------------------------
 * 2022-03-25        qkrtk       최초 생성
 """


def Solution(str_old, find_str):
      print("==========================================")
      print("str_old : %s " % str_old)
      print("find_str : %s " % find_str)
      cnt = 0
      while True:
            if str_old.find(find_str) == -1:
                  break
            str_old = str_old.replace(find_str, ' ', 1)
            cnt += 1
      
      print(cnt)


old = input().strip()
find = input().strip()
Solution(old, find)

Solution("ababababa", "aba")
Solution("aaa aaa", "a")
Solution("a a a a a", "a a")
Solution("ababababa", "ababa")
Solution("aaaaaaa", "aa")

- 틀려서 놀랐다.

반례에 aaabbb ab 가 존재하였다. replace 로 해당 단어를 없애고 없애면..ab 가 3번 중복된다고 표현될 것이다.

그래서 그냥 중간에 공백을 추가해 주었다. 테스트케이스를 통과하기위한 단순한 눈속임이라고 생각된다 솔직히..