摘要:
背包Time Limit: 5000 MSMemory Limit: 32768 KTotal Submit: 111(29 users)Total Accepted: 30(25 users)Rating: Special Judge: NoDescriptionDS最近刚学会了背包。比如,给一个序列,问是否存在一个子集满足元素和为 X , DS 会用一种方法:int dp[X+1];dp[0] = 1;for (int i = 0 ;i #include int a[10000005];int main(){ int i,j,n,t; long long sum; sca... 阅读全文
摘要:
http://poj.org/problem?id=2486典型的回溯题目:特别是状态方程用三维的来标记是否要走回路。题意:一颗树,n个点(1-n),n-1条边,每个点上有一个权值,求从1出发,走V步,最多能遍历到的权值思路:树形dp,比较经典的一个树形dp。首先很容易就可以想到用dp[root][k]表示以root为根的子树中最多走k时所能获得的最多苹果数,接下去我们很习惯地会想到将k步在root的所有子结点中分配,也就是进行一次背包,就可以得出此时状态的最优解了,但是这里还有一个问题,那就是在进行背包的时候,对于某个孩子son走完之后是否回到根结点会对后面是否还能分配有影响,为了解决这个问 阅读全文
摘要:
http://acm.hrbust.edu.cn/index.php?m=ProblemSet&a=showProblem&problem_id=2086很明显的一个二分题目。因为要求精度颇高,所以需要认真的计算。比如我们看这3组数据——111001000100000100001110011100010001000011100110010000答案是——(在精度误差范围内)500000.0000000000500400000.00000000000000500000.00000000000标程的解法是二分相遇的时间,假设为RunTime这样就能够计算出DS和xiaodao奔跑的 阅读全文