- 博客(8)
- 资源 (1)
- 收藏
- 关注
转载 多重背包中多次背包 O(VN) 算法1 (单调队列优化) 带参考程序
<br />这个东西很难找额……找到了就发出来给大家看吧<br />多次背包<br />多次背包问题:给定 n 种物品和一个背包。第 i 种物品 的价值是 Wi ,其体积<br />为 Vi,数量是 Ki件,背包的容量为 C。可以任意选择装入背包中的物品,求装入背<br />包中物品的最大总价值。 <br /><br />方法一:可以把此物品拆分成Ki个只能用一次的物品,直接套用 0-1 背包问题的经典动规实现,但是效率太低了,需要寻找更高效的算法。此算法时间复杂度为O(C*∑(Ki)) <br /><br
2010-07-31 00:41:00
880
原创 POJ 2985 线段树+并查集
好久没有写过并查集了,没看以前的提交的代码,居然不假思索的将它们默写了下来,还算不错-_-思路:建立一个线段树。每段记录group的大小在l与r之前的数目。初始时大小为1的组有N个,大小不为1的组均为0个。所以对于每段,若左边界为1,则其数据域为N,否则为0。以后不断合并group的过程中,设两个group的带大小分别为k1,k2。则线段树中包含k1或k2的结点数据域均减1,而包含k1+k2的结点数据域加1。因为合并后,原来大小为k1,k2的组已经不存在,取而代之的是新的大小为k1+k2的组。以后查询第k大
2010-07-28 21:47:00
829
原创 POJ 2488 回溯
<br />#include <cstdlib>#include <iostream>#include <cstring>using namespace std;class problem{ static int dx[8]; static int dy[8]; const static int MAX=50*50,R=26,C=26; bool v[R][C]; int cnt,r,c,rc;
2010-07-28 20:38:00
610
原创 POJ 2352 树状数组
第一次没看解题报告的树状数组。题目中的Y坐标没有用处。代码很简,如下:#include #define lowbit(x) (x&(-x))int a[32001],ans[15001]={0};int ins(int x){ do{ a[x]++; x+=lowbit(x); }while(x0); return tmp;}int main(){ int i,N,x,y; scanf("%d",&N); f
2010-07-22 19:58:00
471
原创 POJ 3277
<br />POJ 3277<br />狂汗的一道题。本来这算是线段树入门级题目了,但是以下是我这个菜鸟的做题情况:<br /><br /><br />看了下用时最短的只有32MS,相形之下,我的前三次可以算做是TLE了。后来网上找了个代码改了改,时间才缩短到172MS。<br />我看了下我们的线段树构造主要有以下两个区别:<br />1. 我的线段树只存了每段的高度。其左边界和有边界在调用函数时写出来,即为以下形式:<br />insert(p,l,r,a,b){<br /> if(l==a&&r
2010-07-10 16:33:00
1094
1
转载 php获取form表单中name相同的表单项
原文地址:http://hi.baidu.com/pengpeng5047/blog/item/c3f3b003d0452a034bfb519f.html比如下面的表单:/*form.php*/姓名学号张三李四这是一个学生信息的表单,允许管理员修改学生的学号并保存。很明显通常学生会有很多个。为了获取学号,我们的getform.php如下:$number = $_POST[nu
2010-05-06 16:24:00
1799
原创 POJ 1095 解题报告
题目要求:略思路:首先,设拥有N个结点的不同形态的有序二叉树有L[N]棵。L[N]即为卡特兰数。那么:(1).针对这个问题先转换为输入N,求n和k。n表示编号为N的树所拥有的结点数。k表示这棵编号为N的树是拥有结点数为n的树的有序集合的第几棵。我们可以先将Catalan数表打出来:int L[19]={1,1,2,5,14,42,132,429,1430,4862,16796,58
2010-03-28 23:52:00
2578
1
原创 POJ 1042 解题报告
题目要求:一条路上有N个湖。John刚开始在第1个湖。他可在其中选择若干湖来钓鱼。每到达一个湖,他或者直接走过去下一个湖,或者停留钓鱼。钓鱼的时间必须为5分钟的倍数。已知第i个湖到第i+1个湖需行t[i]时间。每个湖内初始有鱼的数目为f[i]。当在第i个湖钓鱼时,每过5分钟,该湖鱼的数目以d[i]的速度在减少直到为0。问John如何选择,能钓到最多数量的鱼。即求在每个湖停留多长时间以及最大
2010-03-26 20:13:00
868
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人