Prefix와 Suffix
시간 제한2초메모리 제한512 MB
문자열 S의 부분 문자열 중 A로 시작하고 B로 끝나는 서로 다른 부분 문자열의 개수를 센다. A와 B는 부분 문자열 안에서 겹칠 수 있다.
문제
문자열 , , 가 주어진다.
의 부분 문자열 중에서 로 시작하고 로 끝나는 것이 몇 가지인지 구하는 프로그램을 작성하시오. 부분 문자열은 에서 연속한 구간을 뜻하고, 글자 구성이 같은 부분 문자열은 서로 다른 위치에서 나타나도 한 번만 센다. 한 부분 문자열 안에서 가 차지하는 구간과 가 차지하는 구간은 겹쳐도 된다.
입력
첫째 줄에 , 둘째 줄에 , 셋째 줄에 가 주어진다. 세 문자열 모두 알파벳 소문자로만 이루어져 있고, 길이는 1 이상 2,000 이하이다.
출력
첫째 줄에 로 시작하고 로 끝나는 서로 다른 부분 문자열의 개수를 출력한다.
힌트
가 abababab, 가 a, 가 b이면 조건을 만족하는 부분 문자열은 ab, abab, ababab, abababab 네 가지다.