namespace SeqListSort{ /// /// /// 有n件物品和一个容量为m的背包。第i件物品的价值是v[i],重量是w[i]。求解将哪些物品装入 /// 背包可使价值总和最大 /// 动态规划中最最最重要的两个概念: 状态和状态转移方程在这个问题...
分类:
其他好文 时间:
2015-03-02 06:06:21
阅读次数:
209
题目大意:给出一个连通图和一个序列,求改变尽量少的序列中的元素,使得相邻两个元素相同或在图中相邻。
a[i][j]=1表示i和j相邻,a[i][j]=0表示i和j不相邻。b[i]表示序列中第i个数。
用d[i][j]表示前i个数且第i个数为元素j时的最少改变数量,由d[i-1][u]推来。其中j和u相同或相邻。
状态转移方程:d[i][j]=min { d[i-1][u]+k...
分类:
其他好文 时间:
2015-03-02 01:03:03
阅读次数:
211
题目链接:点击打开链接
题意:
给定n个数,
构造一个序列(只能选给出的n个数,但数字可重复用)
使得序列严格递增且相邻的两个数字不互质
思路:
因为是严格递增,所以给输入的n个数排个序,相当于选n个数中的子序列了。
把每个数都分解质因数,然后用质因数转移方程即可。
import java.io.BufferedReader;
import java.io.InputStreamR...
分类:
其他好文 时间:
2015-03-01 23:49:41
阅读次数:
332
题目大意:求长度为N(1
用d[i][j][u]表示长度为i且后11个01串组成数j且不含长度大于或等于u的01串有多少个。
如果j中含有长度至少为u的回文串,那么d[i][j][u]=0。
否则,假设d[i][j][u]可以由d[i-1][v][u]转移得来。根据状态的表示,那么v的低10位肯定是u的高10位,v的最高一位可以为0或1,即v=j/2或v=j/2+(1
程序将表打出...
分类:
其他好文 时间:
2015-02-28 14:40:29
阅读次数:
138
IoC(Inversion of Control)就是由容器控制程序之间的关系,而非传统实现中,由程序代码直接操控。这也就是所谓“控制反转”的概念所在。控制权由应用代码中转到了外部容器,控制权的转移是所谓反转。IoC还有另外一个名字——“依赖注入(Dependency Injection)”。从名字...
分类:
其他好文 时间:
2015-02-28 12:56:41
阅读次数:
108
今天就这题照着别人的代码学了字典树...
这篇论文:http://wenku.baidu.com/view/d2ba836fb84ae45c3b358ca8.html介绍了各种字典树的运用,长了好多姿势,很有启发性
归纳一下字典树的应用:
检索(主要功能)
串排序
在DP中减少无效的状态转移
最长公共前缀问题(LCP)转化成LCA
tire+KMP 构成AC自动机数据结构
...
分类:
其他好文 时间:
2015-02-28 08:57:53
阅读次数:
165
题解
——Silver
f[i][j]表示到第i个跳过了j个的最小值
然后暴力从前转移。
它的时间复杂度是1.25亿,但是常数远远远远小于1
——Bronze
跟银组的一样,只不过改改数组大小,然后m直接赋值1就好了。
银组代码:
#include
#include
#include
#include
#include
#define N 505
#define...
分类:
其他好文 时间:
2015-02-27 18:25:22
阅读次数:
192
题目链接: sicily 13602
拿到题目马上就想到动规了,而且应该算是棋盘型的DP,状态转移方程挺好想的,就直接上代码了:#include using namespace std;long long dp[35][35]; //注意数据范围int main()
{
int n;
while(~scanf("%d",&n)&&n)...
分类:
其他好文 时间:
2015-02-27 17:09:15
阅读次数:
142
第一,状态图的概念
状态图,也叫做状态机图,它表示一个模型元素在其生命期间的状况。从该模型元素的开始状态起,响应事件,执行某些动作,引起状态转移到新状态,又在新状态下响应事件,执行动作,引起转移到另一个状态,如此连续,直到终结状态。
一句话来说就是:源状态在经历了某个事件之后进入目标状态。
第二,状态图包含的要素
状态图包含...
分类:
其他好文 时间:
2015-02-27 13:33:04
阅读次数:
119
题意:给出一个天平,给出c个钩子,及c个钩子的位置pos[i],给出g个砝码,g个砝码的质量w[i],问当挂上所有的砝码的时候,使得天平平衡的方案数,用dp[i][j]表示挂了前i个砝码时,平衡点为j时的总的方案数,状态转移为第i个砝码是否挂上,如果要挂上第i个砝码的话,j>=pos[i]*w[i]...
分类:
其他好文 时间:
2015-02-27 11:23:09
阅读次数:
100