코딩테스트

프로그래머스 크기가 작은 부분 문자열 level 1

choyou831 2024. 7. 10. 18:17

def solution(t, p):
    answer = []
    count = 0
    for i in range(len(t)-len(p)+1):
        answer.append(t[i:i+len(p)])
    for j in range(len(answer)):
        if answer[j] <= p:
            count += 1
    return count

 

우선 이문제를 처음봤을때 어떻게 t를 p의 길이많큼 슬라이싱을 해야하는지었다.

for문을 통해 반복하면서 i~i+len(p)까지 돌려주게 된다면 p의 길이만큼 값이 슬라이싱된다는 것을 알았다.

i값이0일때는 0~2까지,1일때는 1~3까지,314,141이런식으로 슬라이싱한 값은 answer list에 넣어준뒤,

for문을 통해 p값이랑 비교하여 count을 사용하여 개수를 세준뒤 return 하였다.