https://www.acmicpc.net/problem/2195
2195번: 문자열 복사
첫째 줄에 S, 둘째 줄에 P가 주어진다. S와 P는 영어 대소문자와 숫자로만 되어 있다. S의 길이는 1,000을 넘지 않으며, P의 길이는 1,000을 넘지 않는다. copy함수만을 이용하여 S에서 P를 만들어낼 수
www.acmicpc.net
S = input()
P = input()
i,j,cnt = 0,1,0
while i < len(P):
if P[i:i+j] in S and j <= len(P): # 길이가 1인 것부터 하나씩 늘려가며 S에 존재하는 것인지 확인(+유효인덱스범위)
j += 1 # 이 때, j는 끝값이므로 부등호 넣어줘야함!
else:
cnt += 1 # 복사하는 횟수
i = i+j-1 # 이전의 끝값 범위부터 시작
j = 1 # j는 1로 초기화(자기자신부터 하나씩 늘려가야하므로)
print(cnt)
'백준' 카테고리의 다른 글
백준 20188. 등산마니아 (0) | 2023.10.18 |
---|---|
백준 1459. 걷기 (0) | 2023.10.18 |
백준 14503. 로봇 청소기 (0) | 2023.09.22 |
백준 9205. 맥주 마시면서 걸어가기 (0) | 2023.09.21 |
백준 2573. 빙산 (0) | 2023.09.20 |