LATGACH - Lát gạch

Tags: bignum, dp

Problem

https://vn.spoj.com/problems/LATGACH

https://oj.vnoi.info/problem/LATGACH

Cho một hình chữ nhật kích thước 2xN (1<=N<=100). Hãy đếm số cách lát các viên gạch nhỏ kích thước 1x2 và 2x1 vào hình trên sao cho không có phần nào của các viên gạch nhỏ thừa ra ngoài, cũng không có vùng diện tích nào của hình chữ nhật không được lát.

Input

Gồm nhiều test, dòng đầu ghi số lượng test T ( T<=100 ).
T dòng sau mỗi dòng ghi một số N.

Output

Ghi ra T dòng là số cách lát tương ứng.

Example

Input
3
1
2
3

Output
1
2
3

Tutorial

Gọi F[i] là số cách lắp sàn 2*i. Nhận xét có hai cách lắp hai ô cột i : thứ nhất lắp 1 gạch dọc lên hai ô này, tức là F[i-1]. Cách 2 là lắp hai miếng gạch ngang lên bốn ô ở hai cột cuối, tức là F[i-2]. Do đó F[i] = F[i-1] + F[i-2]. Với F[1] = 1, F[2] = 2;

Bài này cần cài số lớn


Submission

LATGACH.cpp