Python/[코드트리]
[코드트리] 문자열 찾기 > 부분문자열 위치 구하기(★)
hyunnn_00
2023. 7. 4. 11:39
주어진 입력 문자열에 대하여 목적 문자열이 부분 문자열로 존재하는 경우, 부분 문자열의 시작 인덱스를 출력하는 코드를 작성해보세요. 인덱스는 0부터 시작한다고 가정합니다.
import sys
input_str = input()
target_str = input()
input_len, target_len = len(input_str), len(target_str)
# 입력 문자열의 각 문자를 시작점으로 하여 목적 문자열을 만들 수 있는지 확인합니다.
for i in range(input_len):
# input_str의 i 부터 i + target_len - 1까지의 원소가
# target_len의 0부터 target_len - 1 까지의 원소와
# 정확히 일치하는지 확인합니다.
# 만약 input_str의 끝 원소인 i + target_len - 1 번째가
# 존재하지 않는다면 비교를 하지 않습니다.
if i + target_len - 1 >= input_len:
continue
# input_str의 s_idx1에서 e_idx1 까지의 문자열과
# output_str의 s_idx2에서 e_idx2 까지의 문자열과 일치하는지를 비교합니다.
is_matched = True
for j in range(target_len):
if input_str[i + j] != target_str[j]:
is_matched = False
if is_matched:
# 모든 문자에 대하여 매칭이 된 경우:
print(i)
sys.exit(0)
# 매칭이 되지 않는 경우:
print(-1)
# 풀이 --------------------------------------
str1 = input()
str2 = input()
print(str1.find(str2))