프로그래머스 연습문제
- Lv 1. 크기가 작은 부분 문자열 (Python)
https://school.programmers.co.kr/learn/courses/30/lessons/147355
def solution(t, p):
answer = 0
start = 0
for i in range(len(p), len(t)+1):
sub_str = t[start : i]
if(int(p) >= int(sub_str)):
answer += 1
start += 1
return answer
sub_str
은 t
에서 p
의 길이만큼 자르는 문자열을 담는 변수다.ex. “3 1 4 1 5 9 2"
라면, 3개씩 잘라서 p와 비교할 때의 인덱스는 012, 123, 234, 345, 456 이렇게 잘라진다.
따라서 슬라이싱할 때 [시작:끝]
이라면 시작
은 0부터 설정하여 1씩 늘리고, 끝
은 p의 길이로 설정하여 1씩 늘리면 된다. (끝은 포함되어 잘리지 않기 때문에 p의 길이로 설정해야 그 전까지 잘리게 된다.)
아주 유익한 내용이네요!