매칭 게임
시간 제한2초메모리 제한512 MB
서로 다른 번호가 서로 다른 문자에 대응하는 전단사 대응 조건에서, 패턴 P와 일치하는 S의 부분 문자열 개수를 센다.
문제
아담과 캐롤은 매칭 게임을 한다. 게임판은 소문자 알파벳 개로 이루어진 문자열 이고, 목표는 특별한 형태의 패턴 가 안에서 매칭되는 자리를 모두 찾는 것이다. 패턴의 길이는 이고, 1 이상 26 이하의 정수 으로 정의된다.
위치 에서 시작하는 연속 부분 문자열 이 패턴 의 매칭이라는 것은, 에 나오는 수를 소문자에 대응시키는 사상 중에서 다음 두 조건을 모두 만족하는 것이 존재한다는 뜻이다. 그 사상으로 패턴을 옮기면 이 되고, 서로 다른 두 수는 같은 문자에 대응되지 않는다.
예를 들어 가 awawww이고 가 이면 매칭은 위치 1과 2에서 시작하는 길이 3짜리 부분 문자열 awa와 waw 두 개다. www는 매칭이 아니다. 수 10과 21이 둘 다 문자 w에 대응해야 하기 때문이다.
아담과 캐롤이 정답지를 잃어버려서 매칭을 빠짐없이 찾았는지 확신하지 못한다. 와 가 주어질 때 매칭의 개수를 구하라.
입력
첫째 줄에 문자열 가 주어진다. 는 비어 있지 않고 길이가 이하이며, 각 문자는 a부터 z까지의 소문자다.
둘째 줄에 패턴의 길이 이 주어진다 ().
셋째 줄에 패턴을 이루는 정수 이 공백으로 구분되어 주어진다 ().
출력
에서 찾은 패턴 의 매칭 개수를 한 줄에 출력한다.