GNY07H - Tiling a Grid With Dominoes


We wish to tile a grid 4 units high and N units long with rectangles (dominoes) 2 units by one unit (in either orientation). For example, the figure shows the five different ways that a grid 4 units high and 2 units wide may be tiled.

Write a program that takes as input the width, W, of the grid and outputs the number of different ways to tile a 4-by-W grid.

Input

The first line of input contains a single integer N, (1 ≤ N ≤ 1000) which is the number of datasets that follow.

Each dataset contains a single decimal integer, the width, W, of the grid for this problem instance.

Output

For each problem instance, there is one line of output: The problem instance number as a decimal integer (start counting at one), a single space and the number of tilings of a 4-by-W grid. The values of W will be chosen so the count will fit in a 32-bit integer.

Example

Input:
3
2
3
7

Output:
1 5
2 11
3 781

hide comments
cenation092: 2018-07-15 04:09:23

This will help http://journeywithdp.blogspot.com/2018/07/way-to-solve-tiling-problems.html

carofe82: 2018-03-06 16:35:48

Find the recurrence relation.

arvindkejriwal: 2017-06-29 09:24:19

dp+bitmask

prasoonbatham: 2017-05-24 08:28:38

Nice problem :) Ac in one go.

sushantgokhale: 2017-04-03 07:35:41

fantastic problem :)

Last edit: 2017-04-03 07:36:45
vignesh97: 2016-06-08 11:46:46

Good problem. AC in first attempt :p

minhthai: 2016-01-22 12:01:09

backtracking is ok :)

birdie: 2016-01-15 10:37:48

backtracking+dynamic programing

Francky: 2015-12-30 19:06:34

Image restored.

quirk: 2015-12-30 13:51:57

For those who need the image: http://imgur.com/nhxjwNe


Added by:Marco Gallotta
Date:2008-03-12
Time limit:9.600s
Source limit:50000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Languages:All except: ERL JS-RHINO NODEJS PERL6 VB.NET
Resource:ACM Greater New York Regionals 2007