首先先说明一下01背包和完全背包问题的区别01背包:有 N 件物品和一个容量为 V 的背包。放入第 i 件物品耗费的费用是 Ci,得到的价值是 Wi。求解将哪些物品装入背包可使价值总和最大。(可以不装满)完全背包:有 N 种物品和一个容量为 V 的背包,每种物品都有无限件可用。放入第 i 种物品 的...
分类:
编程语言 时间:
2015-04-18 14:19:52
阅读次数:
211
C - Monkey and Banana
Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u
Submit Status Practice HDU 1069
Description
A group of researchers are designing an experiment to tes...
分类:
其他好文 时间:
2015-04-18 08:49:12
阅读次数:
199
dp[i][j]代表区间[ i , j ]中回文子序列的个数……#include
#include
#include
#include
#define MOD 100007using namespace std;char st[1005];
int a[1005],dp[1005][1005];int main()...
分类:
其他好文 时间:
2015-04-17 22:16:32
阅读次数:
124
对于一类状态转移方程可以写成
f[i]=min/max(a[i]*b[j]+G[j])+H[i](a、H是只和i有关的函数,b、G是只和j有关的函数)
且a和b至少有一个是单调的动态规划问题,我们可以通过数形结合来优化它。这类问题一般是要把一个线性序列分成若干段,暴力解决时间复杂度一般是O(n^2),如果a和b都是单调的,可以优化到O(n),如果只有一个是单调的,可以优化到O(nlog2n)。...
分类:
其他好文 时间:
2015-04-17 11:24:57
阅读次数:
490
算法图搜索(广度优先、深度优先)深度优先特别重要排序动态规划匹配算法和网络流算法正则表达式和字符串匹配数据结构图 (树尤其重要)Map堆栈/队列Tries | 字典树额外推荐贪婪算法概率方法近似算法算法:三路划分-快速排序合并排序(更具扩展性,复杂度类似快速排序)DF/BF 搜索 (要知道使用场景)...
分类:
编程语言 时间:
2015-04-17 11:09:01
阅读次数:
191
题目:给你一个2*n的地面,用1*2和2*2的地板砖铺满,有多少种不同方案。
分析:组合数学,动态规划。直接找到地推关系求解。
因为,只可能是最后一列是一个整体(1种情况)或者最后两列是一个整体(两种情况);
所以,有递推公式:f(n)= f(n-1)+ 2*f(n-2);
可以使用动态规划或母函数(an = (pow...
分类:
其他好文 时间:
2015-04-17 01:17:42
阅读次数:
184
题意:一个数字组成的三角形,像酱: 7 3 8 8 1 0 2 7 4 44 5 2 6 5从最上面的顶点开始,每次可以移动到下一层左右两个点上,选一条路径,走过的点上的值加和最大,输出最大值。解法:经典动态规划问题……数字三角形……每个点可以由上一层相邻的两个点的值转移而来,方程:dp...
分类:
其他好文 时间:
2015-04-16 21:40:00
阅读次数:
186
1254. 传手绢Description活动的时候,老师经常带着同学们一起做游戏。这次,老师带着同学们一起传手绢。游戏规则是这样的:n个同学站成一个圆圈,其中的一个同学手里拿着手绢,当老师吹哨子时开始传,每个同学可以把手绢传给自己左右的两个同学中的一个(左右任意),当老师在此吹哨子时,游戏停止,此时...
分类:
编程语言 时间:
2015-04-16 21:25:53
阅读次数:
143