摘要: #include "stdio.h" int Fbi(int i) /* 斐波那契的递归函数 */ { if( i < 2 ) return i == 0 ? 0 : 1; return Fbi(i - 1) + Fbi(i - 2); /* 这里Fbi就是函数自己,等于在调用自己 */ } int main() { int i; int a[40]; printf("迭代显示斐波那... 阅读全文
posted @ 2017-10-06 21:17 2014acm 阅读(384) 评论(0) 推荐(0) 编辑
摘要: 1==首先编译的时候会给出如下warning:warning:divisionbyzero。然后运行时如果是"3.0/0"这样的(floating),会给出inf;如果是"3/0"这样的(integer),会给出Floatingpointexception。2==在vc中用F5执行会弹出一个对话框,... 阅读全文
posted @ 2015-05-15 13:40 2014acm 阅读(1561) 评论(0) 推荐(0) 编辑
摘要: 动态规划法基本思想: 将原问题分解为相似的子问题,在求解的过程中通过子问题的解求出原问题的解。 比如说迈台阶问题题目描述 有一个有n级台阶的楼梯,上楼时可以一次迈一级,或者一次迈二级,或者一次迈三级,或者一次迈四级;问共有多少种上楼梯迈台阶的方法。(注意结果可能有点大。)输入 只有一行且只有一个正整... 阅读全文
posted @ 2015-04-23 11:10 2014acm 阅读(1791) 评论(0) 推荐(0) 编辑
摘要: 4 61 42 63 122 7// poj 3624 标准的01背包 优化的一位数组#include #include using namespace std;int w[3500],v[3500],dp[13000];int main (){ int n,m,i,j; scanf("%d%d",... 阅读全文
posted @ 2014-08-18 18:51 2014acm 阅读(309) 评论(0) 推荐(0) 编辑
摘要: 物品 1 2 3 4 5 6价值 1 2 3 4 5 6个数4 7459 101234567891011121314151617181920212223242526272810000000000000000000000000000dp[0] = 1;物品种类 i= 10123456789101112... 阅读全文
posted @ 2014-08-18 11:23 2014acm 阅读(174) 评论(0) 推荐(0) 编辑
摘要: #include #include int dp[60001];void f(int maxv,int n,int c[ ],int v[ ])//最大可能价值、 物品种类、物品数量、物品价值 { int i,j,k,t; memset(dp,0,sizeof(dp)); dp[0] = 1; fo... 阅读全文
posted @ 2014-08-18 11:09 2014acm 阅读(148) 评论(0) 推荐(0) 编辑
摘要: #include #include int dp[60001];void f(int maxv,int n,int c[ ],int v[ ]) //最大可能价值、 物品种类、物品数量、物品价值 { int i,j,k,t; memset(dp,0,sizeof(dp)); dp[0] = 1; f... 阅读全文
posted @ 2014-08-18 10:56 2014acm 阅读(163) 评论(0) 推荐(0) 编辑
摘要: #include using namespace std;int cash, n, m[13], d[13];int f[100100];int money, i, v, temp, k;int solve() { memset(f, 0, sizeof(f)); ... 阅读全文
posted @ 2014-08-18 10:20 2014acm 阅读(227) 评论(0) 推荐(0) 编辑
摘要: // 多重背包 DP/* 题目大意是:给定N种面值分别为d[i]的钞票,数量分别为n[i]张.再给一个整数cash.求,用这些钞票能表示出的不大于cash的最大值是多少.数据范围N#include const int MAXN = 100001;const int MAXM = 110;int n,... 阅读全文
posted @ 2014-08-18 10:13 2014acm 阅读(217) 评论(0) 推荐(0) 编辑
摘要: #include #include using namespace std;int dp[1005], w,v,T,M;int max(int x,int y){ return x>y?x:y; }void f( ){ int i,j; for (i=1; i>w>>v; //直接读进去 for (... 阅读全文
posted @ 2014-08-18 09:57 2014acm 阅读(189) 评论(0) 推荐(0) 编辑