Tiling 2506 (打表+大数+递推)
发布时间:2020-12-14 02:23:48 所属栏目:大数据 来源:网络整理
导读:Tiling Time Limit: 1000MS ? Memory Limit: 65536K Total Submissions: 8291 ? Accepted: 3996 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
Tiling
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 2 8 12 100 200 Sample Output 3 171 2731 845100400152152934331135470251 1071292029505993517027974728227441735014801995855195223534251 ? #include<stdio.h> #include<string.h> int a[251][101]; int main() { int n,m,i,j; a[0][100]=0; a[1][100]=1; a[2][100]=3; for(i=3;i<=250;i++) { for(j=100;j>=0;j--) { a[i][j]+=a[i-1][j]+2*a[i-2][j]; if(a[i][j]>=10) { a[i][j-1]+=a[i][j]/10; a[i][j]%=10; } } } while(scanf("%d",&n)!=EOF) { if(n==0||n<0||n>250)//这块太坑了(WA了十几次) printf("1n"); else { for(i=0;i<=100;i++) if(a[n][i]!=0) break; m=i; for(j=m;j<=100;j++) printf("%d",a[n][j]); printf("n"); } } return 0; } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |