티스토리 뷰

💡 문제 해결 아이디어

  1. 반복문의 활용 (range): range(9)하면 0부터 8까지만 반복한다. 그래서 len(t) - len(p) + 1
  2. 문자열 인덱싱
  3. int()를 이용한 타입 변환: 문제 설명에서 02, 03 등의 부분 문자열이 발생할 경우, 2와 3으로 처리한다 했기 때문.

💻 작성된 코드

def solution(t, p):
    answer = 0
    
    for idx in range(len(t)-len(p)+1):
        # p의 길이만큼 잘라내고, 타입을 숫자로 만들어준다.
        part_of_t = int(t[idx:idx+len(p)])
        
        # t의 부분 문자열의 값이 p의 값보다 '작거나 같은' 경우, answer += 1
        if part_of_t <= int(p):
            answer += 1
            
    return answer
댓글