겹치지 않는 등장 위치
시간 제한4초메모리 제한512 MB
문자열 s와 여러 질의 문자열이 주어질 때, 각 질의 문자열이 s에서 겹치지 않게 등장하는 최대 개수를 구한다.
문제
문자열 에서 문자열 의 겹치지 않는 등장 위치 집합이란, 가 에 등장하는 위치들의 집합으로서 어느 두 등장 위치도 서로 겹치지 않는 것을 말한다. 즉, 의 어떤 문자 위치도 두 개의 서로 다른 등장 위치에 속하지 않는다.
소문자 영어 알파벳 개로 이루어진 문자열 와 개의 질의가 주어진다. 각 질의는 문자열 하나로 이루어진다.
각 질의마다, 에서 의 겹치지 않는 등장 위치 집합의 최대 크기를 출력한다.
입력
첫째 줄에 문자열 의 길이 과 질의의 개수 이 공백으로 구분되어 주어진다 (, ).
둘째 줄에 소문자 영어 알파벳 개로 이루어진 문자열 가 주어진다.
다음 개의 줄에 각각 소문자 영어 알파벳으로 이루어진 문자열 가 주어진다. 이는 번째 질의이다 (이며, 는 문자열 의 길이이다).
모든 의 길이의 합은 이하임이 보장된다.
출력
각 질의 마다 에서 의 겹치지 않는 등장 위치 집합의 최대 크기를 한 줄에 하나씩 출력한다.