옛 금
메모리 제한1024 MB
각 킬로미터의 표시와 맞는 금 배치를 세고, 금이 하나 이상 남는 경우만 골라 10^9+7로 나눈 나머지를 구합니다.
문제
아주 오래전(년 전), 당신은 동남아시아의 동서로 뻗은 도로에 있었습니다. 그 도로에는 금덩이가 적어도 하나 있다고 알려져 있었습니다. 당신에게는 성능이 제한적이지만 믿을 만한 금 탐지기가 있었습니다. 그 금으로 엄청난 부자가 된 뒤, 떠올릴 수 있는 활동은 모두 해 봤지만 전부 싫증이 났습니다. 넓은 저택을 돌아다니다가 그 금 사냥 때 남긴 메모를 찾았습니다.
메모는 도로를 그린 도식입니다. 도로의 1km마다 다음 다섯 가지 표시 중 하나가 적혀 있습니다.
<: 가장 가까운 금덩이가 서쪽에 있습니다.=: 동쪽과 서쪽에서 가장 가까운 금덩이까지의 거리가 같고, 그 위치에는 금덩이가 없습니다.>: 가장 가까운 금덩이가 동쪽에 있습니다.o: 그 위치에 금덩이가 있습니다..: 그 위치에 대해 알려진 것이 없습니다.
알 수 없는 개의 위치(.)에는 각각 금덩이가 있을 수도 있고 없을 수도 있으며, 서로 독립입니다. 모든 메모와 맞고, 도로 전체에 금덩이가 하나 이상 있는 배치가 가지 중 몇 가지인지 구하세요. 결과가 매우 클 수 있으므로 소수 ()로 나눈 나머지를 출력하세요.
입력
첫 줄에 테스트 케이스의 수 가 주어집니다. 이어지는 개의 줄에는 각각 한 테스트 케이스를 나타내는 문자열 가 주어집니다. 의 번째 문자는 서쪽에서 동쪽 방향으로 본 번째 킬로미터의 표시이며, 표시는 위의 기호를 따릅니다.
출력
각 테스트 케이스에 대해 Case #x: y 형식으로 한 줄씩 출력하세요. 는 1부터 시작하는 테스트 케이스 번호이고, 는 유효한 금덩이 배치의 수를 ()로 나눈 나머지입니다.
제한
- .
- 의 각 문자는
<(미만),=(같음),>(초과),o(소문자 o),.(마침표) 중 하나입니다. - 의 길이는 1 이상이며, 의 모든 문자가
.(마침표)인 것은 아닙니다.
힌트
예제 1번에서 유효한 배치는 세 가지이며, 도로는 각각 oo≤>o<, oo≤>oo, o<≤>>o가 됩니다.
예제 2번에는 유효한 배치가 없습니다.
예제 3번에서 유효한 배치는 하나뿐이며, 도로는 o=o가 됩니다. 유효한 배치는 항상 도로에 금덩이가 하나 이상 남아야 합니다.
예제 4번에서는 가지 배치가 모두 유효합니다. 알 수 없는(.) 위치를 모두 비워 두는 배치도 도로에 금덩이가 하나 남으므로 유효합니다.