PS/BOJ

[Python] 6550번 부분 문자열

s_omi 2024. 8. 25. 09:20
728x90
반응형
SMALL

✏️ 문제

 

문제 파악

s 문자열의 문자가 해당할 경우 임의의 변수의 값을 +1 함으로써 "t 문자열을 전부 돌았을 때 임의의 문자열이 s 문자열의 길이와 같으면 s가 t의 부분 문자열이다" 라는 조건을 세워 코드를 짰다. 

이렇게 하면 문자열의 순서도 지킬 수 있다.

 

또한 여기서는 입력의 개수를 따로 입력받지 않는데 이를 무한 반복문으로 짠 후 try-catch문을 사용해서 풀어야한다!

(필자는 왜 없지? 이러고만 있었음..)

 

 

알고리즘

  • 그리디 알고리즘
  • 문자열

 

코드

while True:
  try:
    s,t = map(str, input().split())
    list_s = list(map(str, s))
    index = 0

    for i in range(len(t)):
      if index == len(s):
        break

      if s[index] == t[i]:
        index += 1

    print("Yes" if len(s) == index else "No")
  except:
      break

 

 

 

 

 

 

728x90
반응형
LIST

'PS > BOJ' 카테고리의 다른 글

[Python] 12761번 돌다리  (0) 2024.08.27
[Python] 13417번 카드 문자열  (0) 2024.08.25
[Python] 1449번 수리공 항승  (0) 2024.08.24
[Python] 1343번 폴리오미노  (0) 2024.08.24
[Python] 2468번 안전 영역  (0) 2024.08.21