아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

부분 문자열 변환

시간 제한2초메모리 제한512 MB

요약
S의 물음표를 소문자로 바꿔 T가 부분 문자열로 최대한 많이 나타나도록 했을 때 그 최대 개수를 구한다.
난이도

어려움10점 중 8점

유형
동적 계획법, 문자열 매칭, 그리디, 문자열
정답자
아직 제출이 없습니다

문제

두 문자열 SS와 TT가 주어진다. TT는 알파벳 소문자로만 이루어져 있고, SS는 알파벳 소문자와 물음표로만 이루어져 있다.

SS의 모든 물음표를 알파벳 소문자로 바꾸려고 한다. 이때 SS의 부분 문자열로 등장하는 TT의 개수를 최대로 만들어 보자.

입력

첫째 줄에 SS, 둘째 줄에 TT가 주어진다. SS와 TT의 길이는 100 000100\,000보다 작거나 같고, 두 길이를 곱한 값은 10 000 00010\,000\,000보다 작거나 같다.

출력

SS의 물음표를 알파벳 소문자로 바꿨을 때, 부분 문자열로 등장할 수 있는 TT의 개수의 최댓값을 출력한다.

예제3

  1. 예제 1

    입력
    winlose???winl???w??
    win
    
    예상 출력
    5
    
  2. 예제 2

    입력
    glo?yto?e??an?
    or
    
    예상 출력
    3
    
  3. 예제 3

    입력
    ??c?????
    abcab
    
    예상 출력
    2