대칭 선택의 개수
시간 제한1초메모리 제한128 MB
길이 n인 두 단어 열이 주어질 때, 각 위치에서 두 단어 중 하나를 골라 이어 붙였을 때 회문이 되는 선택의 수를 센다.
문제
두 개의 단어 수열 과 이 주어진다. 여기서 이다.
각 인덱스 () 마다 두 단어 와 중 정확히 하나를 고른다. 고른 단어들을 인덱스가 커지는 순서대로 이어 붙인다. 따라서 하나의 선택은 길이 인 수열로 나타낼 수 있으며, 그 번째 원소는 ( 를 고름) 또는 ( 를 고름) 이다. 가능한 선택은 모두 가지이다. 서로 다른 선택이 같은 단어를 만들 수도 있다.
어떤 선택으로 만들어진 단어가 팰린드롬(왼쪽에서 오른쪽으로 읽으나 오른쪽에서 왼쪽으로 읽으나 같은 단어)이면, 그 선택을 대칭적이라고 부른다.
두 수열이 주어질 때, 가지 선택 중 대칭적인 선택이 몇 개인지 구하라.
입력
첫째 줄에 정수 () 이 주어진다.
이어지는 개의 줄에는 첫 번째 수열의 단어들이 한 줄에 하나씩 순서대로 주어진다. 즉 번째 줄이 이다 (). 그다음 개의 줄에는 같은 방식으로 두 번째 수열의 단어들이 주어진다. 즉 번째 줄이 이다.
각 단어는 비어 있지 않은 소문자 알파벳(a 부터 z) 문자열이다. 모든 단어 길이의 합은 이상 이하이다.
출력
대칭적인 선택의 개수를 나타내는 음이 아닌 정수 하나를 출력한다.