정돈된 학급
면접 대비시간 제한2초메모리 제한512 MB
길이가 같은 두 문자열 A와 B가 주어질 때, A의 한 구간을 뒤집어 B로 만들 수 있는 구간의 개수를 센다.
문제
토마스 선생님은 학생 명을 맡고 있다. 선생님은 학생을 한 줄로 세운 뒤, 왼쪽에서 번째 학생에게 문자 가 적힌 카드를 나눠 주었다.
이제 왼쪽에서 번째 학생이 문자 가 적힌 카드를 들도록 줄을 다시 세우려 한다. 줄을 다시 세우는 수단은 한 가지다. 연속해서 서 있는 학생 한 무리를 골라 그 무리의 순서를 뒤집는다. 학생은 뒤집는 동안 처음 받은 카드를 그대로 들고 있다.
이렇게 만드는 방법이 몇 가지인지 세어라. 고른 무리의 시작 위치나 끝 위치가 다르면 서로 다른 방법으로 센다. 한 번 뒤집어서 를 로 만들 수 없으면 답은 0이다.
가 abba이고 가 aabb이면 고를 수 있는 무리는 a(bba) 하나다. 가 caxcab이고 가 cacxab이면 ca(xc)ab와 c(axca)b 두 가지다. 가 a이고 가 z이면 고를 무리가 없다.
입력
첫째 줄에 문자열 , 둘째 줄에 문자열 가 주어진다. 두 문자열은 영어 소문자로만 이루어진다. 의 번째 문자가 , 의 번째 문자가 다. 두 문자열의 길이는 으로 같고 이며, 와 는 서로 다르다.
출력
에서 연속한 구간 하나를 뒤집어 를 만드는 방법의 수를 정수 하나로 출력한다.