본문 바로가기
Develop/백준 (python)

[백준] 6550번 : 부분 문자열 (python)

by Tarra 2023. 8. 3.

6550번 : 부분 문자열


문제)

2개의 문자열 s와 t가 주어졌을 때 s가 t의 부분 문자열인지 판단하는 프로그램을 작성하라. 부분 문자열을 가지고 있는지 판단하는 방법은 t에서 몇 개의 문자를 제거하고 이를 순서를 바꾸지 않고 합쳤을 경우 s가 되는 경우를 이야기 한다.

 

 

 

입력 :

입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있으며, 문자열 s 와 t가 빈칸을 사이에 두고 들어온다. s와 t의 길이는 10만을 넘지 않는다.

 

 

 

출력 :

입력된 s와 t의 순서대로 s가 t의 부분 문자열인 경우 Yes라 출력하고 아닐 경우 No라고 출력한다.

 

 

 

 

풀이)

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
 
# EOF가 들어올 때까지 반복
while True:
    try:
        s, t = map(str, input().split())
 
        flag = 0
        idx = 0
        for i in range(len(t)):
            if s[idx] == t[i]:
                idx += 1
 
            # 만약 s를 모두 체크했다면
            if(idx == len(s)):
                flag = 1
                break
 
        if flag:
            print("Yes")
        else:
            print("No")
 
    except:
        break
cs

 

 


출처 : https://www.acmicpc.net/problem/6550 

 

6550번: 부분 문자열

입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있으며, 문자열 s 와 t가 빈칸을 사이에 두고 들어온다. s와 t의 길이는 10만을 넘지 않는다.

www.acmicpc.net