码迷,mamicode.com
首页 >  
搜索关键字:转移    ( 8626个结果
阅读《软件工程—理论方法与实践》第二章心得体会
软件过程是软件工程人员为了获取软件产品而在软件工具的支持下实施的一系列软件工程活动。其基本活动包括:问题提出、软件需求规格说明、软件设计、软件实现、软件确认、软件演化。软件过程产品涉及软件需求、软件设计、软件实现、软件测试和软件实施等活动产生的结果,这些制品通常是在不同的开发活动之间进行转移和演进。...
分类:其他好文   时间:2015-02-19 21:46:50    阅读次数:198
uva--562Dividing coins +dp
题意: 给定一堆硬币,然后将他们分成两部分,使得两部分的差值最小;输出这个最小的差值。思路: 想了好久都没想到一个合适的状态转移方程。后面看了别人的题解后,才知道能够转成背包问题求解。我们将全部的硬币和的一半作为背包容量,然后将硬币的代价看成其本身的面值。然后背包中能装的最大容量就是当中一个人分得硬...
分类:其他好文   时间:2015-02-19 15:08:02    阅读次数:106
hdu 3507 斜率优化
我的第一道斜率优化。就这道题而言,写出原始的方程: dp[i] = min{ dp[j] + (sum[i]-sum[j])2 + M | j in [0,i) }O(n^2)的复杂度肯定超时,要么优化转移,要么重写方程。斜率优化的思想就是减少不必要的枚举(即不枚举肯定不会成为决策点的j)。我们考....
分类:其他好文   时间:2015-02-18 18:46:04    阅读次数:219
bzoj 1009 DP 矩阵优化
原来的DP:dp[i][j]表示长度为i的合法串,并且它的长度为j的后缀是给定串的长度为j的前缀。转移:i==0dp[0][0] = 1 dp[0][1~m-1] = 0i>=1dp[i][0] = dp[i-1][0]*10-dp[i-1][m-1]dp[i][1] = dp[i-1][0]-(a...
分类:其他好文   时间:2015-02-18 14:07:02    阅读次数:205
深度优先搜索入门:POJ1164城堡问题(递归、用栈模拟递归)
将问题的各状态之间的转移关系描述为一个图,则深度优先搜索遍历整个图的框架为:Dfs(v) {if( v 访问过)return;将v标记为访问过;对和v相邻的每个点u: Dfs(u);}int main() {while(在图中能找到未访问过的点 k) Dfs(k);}例题:POJ1164The C....
分类:其他好文   时间:2015-02-18 11:49:14    阅读次数:192
状态压缩
题目描述:编号为0~n-1的n个位置上分别有价值为w[0]~w[n-1]的n个物品,现在要选出一些物品,使得获得的价值最大,约束条件是:任意连续的m个物品中选取的物品数量不超过q。其中nq, 那么由s不可能转移出任何有效状态.2.如果bitcnt(s)>1, 有转移方程:dp[i+1][ns] = ...
分类:其他好文   时间:2015-02-17 23:31:55    阅读次数:161
uva 10003(动态规划起步第四天 矩阵连乘)
类似矩阵连乘的一道题,很简单DP[i][j]表示区间i,j最少费用,状态转移为DP[i][j] = min{DP[i][k],DP[k][j]} + a[j] - a[i]; 1 #include 2 #include 3 #include 4 #include 5 6 #define R...
分类:其他好文   时间:2015-02-17 18:47:40    阅读次数:137
完全背包
完全背包问题跟01背包问题的区别在于:对每种物品,在01背包中可以选取0个或者1个,而在完全背包中,每种物品都可以选取任意多个。状态定义:dp[i][j]表示:解决了第0~i中物品的选取问题,已消耗容量为j时,获得的最大价值。状态转移:这里的状态转移有两种写法,第一种写法较容易理解,第二中写法理解起...
分类:其他好文   时间:2015-02-17 18:44:48    阅读次数:146
hdu 4050 概率dp
//dp[i][state]//状态转移方程的选取:题目的意思是,从点 i 优先考虑到达 i + A 点的情况,若不能到达 i + A 点,则考虑到达 i + A + 1 点的情况...以此类推,直到考虑完到达 i + B 点的情况。对于最坏的情况,每一个点都有 B - A + 1 个后继点,所以由...
分类:其他好文   时间:2015-02-17 17:35:05    阅读次数:140
01背包
01背包描述的是这样一个问题:有一个容量为m的背包,有n个物品,第i个物品的重量为w[i], 价值为v[i]。现在要往背包中装这些物品,使得最后所获得的总价值最大。状态定义:dp[i][j]表示:解决了第0~i个物品的选取问题后,背包剩余容量为j时,所获得的最大价值。状态转移:dp[i][j] = ...
分类:其他好文   时间:2015-02-17 16:28:13    阅读次数:111
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!