摘要: 01背包要求是每个物品最多只能选择一次完全背包要求是每个物品可无限次选取01背包的状态方程为 f[i][j]=max(f[i-1][j-w(j)]+value[i],f[i-1][j]);完全背包的状态方程为f[i][j]=max(f[i-1][j-w(j)*c]+value[i]*c,f[i-1][j]);01背包二维存储 如f[i][j] i表示在前i个选 j表示总容量注意第4行循环是 0->w1 for i:=0 to w do2 f[0,i]:=0;3 for i:=1 to m do4 for j:=0 to w do begin5 f[i,j]:=f[i-1,j];6 if 阅读全文
posted @ 2013-09-23 12:35 cavehubiao 阅读(219) 评论(0) 推荐(1)
摘要: 用的kruskal求最小生成树,开始想着用一维数组 判断是否存在环,后来一想不对,可能每个点都放连到,但是路径之间不连通...还是得换二维,再就是set里判断元素相等是根据A 15 16 #include 17 #include 18 #include 19 20 #include 21 #include 22 using namespace std; 23 24 #define MAX 888888 25 26 struct node 27 { 28 int w; 29 pair p; 30 }; 31 32 bool operator sn; 46 47 ... 阅读全文
posted @ 2013-09-22 20:13 cavehubiao 阅读(197) 评论(0) 推荐(1)
摘要: 看到vc深入详解上面说:通常与资源相关的对象析构时都会把与之相关联的资源销毁,如CBitmap,这让我记起来以前用ctrllist,修改图标,一直是空白,后来把CImage移到全局就好了,记一下。 阅读全文
posted @ 2013-09-21 23:27 cavehubiao 阅读(117) 评论(0) 推荐(0)
摘要: 基类有static成员时,派生类不会额外开辟一个空间存储static成员,而是基类子类公用。这几天在家休息,一直为退学的事情发愁,最后还是不敢退...#include using namespace std; class Base{public: static int a; static void print() { cout << a << endl; } static void set(int number) { a = number; }}; class Derived1 : public Base{}; class... 阅读全文
posted @ 2013-09-21 20:25 cavehubiao 阅读(157) 评论(0) 推荐(0)
摘要: 从chapte1到chapter2历时1个月,虽然短短30多题,但我已跪了10+题以上...太惨了,今天奋战chapter2最终战,在预先看了解题思路的情况下还是跪倒了.最后是看了下这篇解题报告http://blog.csdn.net/supersnow0622/article/details/9765255仿照着勉强写了一遍,努力啊少年/* ID:hubiao cave LANG:C++ TASK:fracdec */#include#include#include#includeusing namespace std;int main(){// int b[100000]; string 阅读全文
posted @ 2013-09-15 17:18 cavehubiao 阅读(162) 评论(0) 推荐(0)
摘要: 前面写好久就是过不了,后面完全没看懂意思,贴了nocow代码过了先,mark下 阅读全文
posted @ 2013-09-15 14:31 cavehubiao 阅读(100) 评论(0) 推荐(0)
摘要: 学了几年计算机,发现连补码都还没搞清楚,可悲啊刚开始是想INT_MAX+1=?我想INT_MAX=0x7fffffffINT_MAX+1=0x8fffffff二进制就是10000000000000000000000000000...计算机应该是作为负数的补码处理,那么求原码是 ,非符号位取反+1,就是1111111111111111111....+1,这是个啥...这不溢出了吗...想了好久不明白,详解看下你的问题可以这样解决[10000000]补 =[10000000]反+1 =11111111+1 =(1)00000000 =00000000(最高位溢出了,符号位变成了0) 你可能会问 : 阅读全文
posted @ 2013-09-14 19:31 cavehubiao 阅读(278) 评论(0) 推荐(0)
摘要: 看到网上金山笔试一题enum{a,b,c=1,d}cout<<a<<b<<c<<d试了下 a=0,b=1,c=1,d=2enum{a,b,c=255,d=456,e}a=0,b=1,c=255,d=456,e=457enum{a,b,c=255,d=34,e}a=0,b=1,c=255,d=34,e=35可见一般,未指定e的根据前面的+1enum{a,b,c=INT_MAX,d,e}INT_MAX为有符号整形的最大值21亿左右,d=-(INT_MAX+1), e=-INT_MAX; 阅读全文
posted @ 2013-09-14 19:01 cavehubiao 阅读(124) 评论(0) 推荐(0)
摘要: 第一次用dijkstra做题,思路很清晰,但是写完发现竟然有130行...调试都调了好一会看了看别人同是用dijkstra做,不到50行,压力山大,看来以后做对了也得看看别人的题解 1 /* 2 3 ID: hubiao cave 4 5 PROG: comehome 6 7 LANG: C++ 8 9 */ 10 11 12 13 14 #include 15 16 #include 17 18 #include 19 #include 20 21 #define MAX 999999; 22 23 24 using namespace std; ... 阅读全文
posted @ 2013-09-14 18:32 cavehubiao 阅读(253) 评论(0) 推荐(0)
摘要: 解压到这里e:\lib\boost_1_54_0,打开visual studio 2008 command prompt, cd进入boost 顶层目录 ,输入bootstrap.bat按提示继续即可bootstrap.batb2--toolset=msvc-9.0--build-type=completestage 阅读全文
posted @ 2013-09-13 19:39 cavehubiao 阅读(227) 评论(0) 推荐(0)