URI Online Judge | 2208

Fibonacci Words

By ICPC 2012 World Finals PL Poland

Timelimit: 5

The Fibonacci word sequence of bit strings is defined as:

$$F(n) =\begin{cases} & \text 0 \\ & \text 1 \\ & \text F(n-1)+F(n-2)\\ \end{cases} \begin{matrix} \mathbf{if} n = 0 \\ \mathbf{if} n = 1\\ \mathbf{if} n \geqslant 2 \end{matrix}$$

Here + denotes concatenation of strings. The first few elements are:

fibonacci

Given a bit pattern p and a number n, how often does p occur in F(n)?

Input

The first line of each test case contains the integer n (0 ≤ n ≤ 100). The second line contains the bit pattern p. The pattern p is nonempty and has a length of at most 100 000 characters.

Output

For each test case, display its case number followed by the number of occurrences of the bit pattern p in F(n). Occurrences may overlap. The number of occurrences will be less than 263 .

Input Sample Output Sample

6

10

7

10

6

01

6

101

96

10110101101101

Case 1: 5

Case 2: 8

Case 3: 4

Case 4: 4

Case 5: 7540113804746346428