poj2506
来源:互联网 发布:linux版本介绍 编辑:程序博客网 时间:2024/06/05 22:30
Tiling
Time Limit: 1000MS Memory Limit: 65536KTotal Submissions: 9061 Accepted: 4318
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.
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
0的时候是1啊
#include<stdio.h>#include<string.h>#include<stdlib.h>#include<malloc.h>#include<math.h>struct numtype{ int len; int a[1000];}dp[400];int n;/*void add(numtype a,numtype b,numtype c){ int i; int len; if(a.len>b.len) len=a.len; else len=b.len; for(i=1;i<=len;i++){ c.a[i]=a.a[i]+b.a[i]; } for(i=1;i<=len;i++){ if(c.a[i]>9){ c.a[i]-=10; c.a[i+1]++; } } if(c.a[len+1]!=0) c.len=len+1; else c.len=len;}*/int main(){ int i=3; int j,len; for(j=1;j<=1000;j++){ dp[1].a[j]=0; } for(j=1;j<=1000;j++){ dp[2].a[j]=0; } dp[0].len=0; dp[0].a[1]=0; dp[1].len=1; dp[2].len=1; dp[1].a[1]=1; dp[2].a[1]=3; while(~scanf("%d",&n)){ i=3; while(i<=n){ dp[i].len=0; len=dp[i-1].len; for(j=1;j<=1000;j++){ dp[i].a[j]=0; } for(j=1;j<=len;j++){ dp[i].a[j]=dp[i-1].a[j]+dp[i-2].a[j]+dp[i-2].a[j]; } for(j=1;j<=len;j++){ while(dp[i].a[j]>=10){ dp[i].a[j]-=10; dp[i].a[j+1]++; } } if(dp[i].a[len+1]!=0) dp[i].len=len+1; else dp[i].len=len; i++; } if(n!=0){ for(i=dp[n].len;i>0;i--){ printf("%d",dp[n].a[i]); } } else printf("1"); printf("\n"); } return 0;}//A[1]=1,A[2]=3,A[n]=A[n-1]+2*A[n-2]
0 0
- POJ2506
- poj2506
- poj2506 dp
- poj2506--Tiling
- POJ2506,Tiling
- POJ2506-Tiling
- poj2506--Tiling
- POJ2506-Tiling
- poj2506 高精度递推
- POJ2506 Tiling 【大数和】
- poj2506 大数递推
- poj2506-Tiling(规律,大数)
- poj2506 2010.2.17
- POJ2506(递推+高精度)
- POJ2506——Tiling
- POJ2506 JAVA大数
- 递推POJ2506
- POJ2506 高精度+递推
- 全面学习JQuery动态滚动加载web网页内容
- 山东理工OJ 2278 商人的诀窍
- bootstrap, boosting, bagging 几种方法的联系
- Firefox关于Audio事件的bug及解决方案
- gson 的使用 解析json字符串
- poj2506
- windows消息机制(MFC)
- Leetcode 165. Compare Version Numbers (Easy) (cpp)
- 过目不忘 JS 正则表达式
- [LeetCode] 26. Remove Duplicates from Sorted Array
- java.util.ConcurrentModificationException异常及解决方案
- GBDT(MART) 迭代决策树入门教程 | 简介
- 自己动手实现非递归DFS
- 虚拟机类加载机制