摘要: 数列的通项式:ar[i]=ar[i-1]+2*ar[i-2];View Code 1 #include <stdio.h> 2 #include <string.h> 3 4 int ar[255][2000]; 5 6 int main() 7 { 8 int n,i,j,l,pre,len[255]; 9 while (scanf("%d",&n)!=EOF)10 {11 if(n==0)12 {13 printf("1\n");continue;14 }15 memset... 阅读全文
posted @ 2011-10-26 20:29 104_gogo 阅读(133) 评论(0) 推荐(0) 编辑
摘要: View Code 1 #include <stdio.h> 2 3 int ar[5],a,b,c,d,m; 4 5 6 int solve() 7 { 8 for (d=0;d<=ar[4];d++) 9 {10 if(d>m)break;11 for (c=0;c<=ar[3];c++)12 {13 if(c*5+d>m)break;14 for (b=0;b<=ar[2];b++)15 {16 if(b*10+c... 阅读全文
posted @ 2011-10-26 18:40 104_gogo 阅读(254) 评论(0) 推荐(0) 编辑
摘要: 啊!蛋都碎了..输入1的时候,貌似进入了死循环,一直TLE,害得我绞尽脑汁的想该怎么剪枝..又是一道对层数进行限制的dfs,这种dfs好怪,思路是bfs嘛View Code #include <stdio.h>#include <string.h>int n,depth,vis[105],ans[105];int dfs(int k,int a){ int i; if (depth==k) { if(a==n)return 1; return 0; } for (i=k;i>=0;i--) { a+=ans[i]; ... 阅读全文
posted @ 2011-10-26 10:55 104_gogo 阅读(185) 评论(0) 推荐(0) 编辑
摘要: 每次看到动态转移方程就瞬间顿悟,哎,伤不起啊~定义dp[i][j],第i个数字是jdp[i][j]=dp[i-1][j-1]+dp[i-1][j]+dp[i-1][j+1];View Code #include <stdio.h>int main(){ int k,n,i,j; double dp[105][15],a,b; while (scanf("%d%d",&k,&n)!=EOF) { if(k==0) { printf("100.00000\n"); continue; } ... 阅读全文
posted @ 2011-10-26 09:34 104_gogo 阅读(139) 评论(0) 推荐(0) 编辑