FZU 1147 Tiling

来源:互联网 发布:华中数控铣床编程实例 编辑:程序博客网 时间:2024/03/29 06:21

 

Tiling
Time Limit:1sMemory limit:32MAccepted Submit:197Total Submit:496

In how many ways can you tile a 2xn rectangle by 2x1 or 2x2 tiles?

Here is a sample tiling of a 2x17 rectangle.

 

Input is a sequence of lines, each line containing an integer number 0 <= n <= 250. For each line of input, output one integer number in a separate line giving the number of possible tilings of a 2xn rectangle.

Sample input

2812

Output for the sample input

31712731

Original: Albert 2001

 

解题:

       瓷砖有2x1 和2x2的,就如图所示的那样的,可以随便组合而成。要问我们2xn矩形里面铺瓷砖,一共有多少种铺法,0<=n<=250。当n为0的时候,方法只有1种那就是不铺(切记),下面看下其他的。
tiles[1]=1种;
tiles[2]=3种;
tiles[3]=5种;
tiles[4]=11种;

则tiles[n]=tiles[n-1]+tiles[n-2]*2;

每次增加一个,我们在上一个的基础上再考虑额外的情况,要用到大数加法和乘法。