Tiling
Time limit:1000 ms |
|
Memory limit:65536 K |
Total submissions:7528 |
|
Accepted:3682 |
Description
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
Input is a sequence of lines, each line containing an integer number 0 <= n <= 250.
Output
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
2812100200
Sample output
317127318451004001521529343311354702511071292029505993517027974728227441735014801995855195223534251
Source
The uofa local 2000.10.14
import java.math.BigInteger;import java.util.Arrays;import java.util.Scanner;public class poj2506 {public static void main(String[] args) {Scanner cin=new Scanner(System.in);BigInteger []f= new BigInteger[260];Arrays.fill(f, BigInteger.ZERO);f[0]=BigInteger.ONE;for (int i=0;i<=250;i++){f[i+1]=f[i+1].add(f[i]);f[i+2]=f[i+2].add((f[i].multiply(BigInteger.valueOf(2))));}while (cin.hasNext()){int n=cin.nextInt();System.out.println(f[n]);}}}
Java large numbers recursive water over, recursive f [I + 1] and f [I + 2]
The 2xn rectangle is filled with the 2x1 and 2x2 rectangles.