2011.12月初 背包问题专辑POJ 3624 1276 2392 1837

这几天在着力解决背包。

这个月1号和2号看了背包九讲前几章,感触很深,感觉9月份看的东西有的忘记了,有的还存留着一些记忆。不过这次是打印出来看了,看纸质版的资料果然自己更加认真。

进入正题吧:

3624:01背包,最简单的

1276:多重背包,这道题非常坑人,我试了好多次,觉得自己的数据对了,但是提交上去总是WA,直到第二天都是这样,我改了又改,几乎检查了所有可能出错的地方,为了防止范围不够,又把各数组范围设置大一些了,最终仍然WA。最后我死马当活马医,把输入的cin用scanf替换掉了。结果提交后,瞬间AC。泪奔啦。。。。。。

2392:多重背包。第一遍看完题,可能觉察不到那么简单,对key排序后,再仔细想透彻(关键就在这里),就明白可以用最经典的多重背包解决了。一定需要注意的一个地方,也是自己刚刚犯了错误的地方就是:这道题相当于背包九讲里所提到的“初始化0还是负无穷大”的问题,因为问题考察的点对应于01背包,并不是“最大化”,而是是否能够到达那个最远的距离。这对应于《背包九讲》的1.4“初始化的细节问题”。

1837:分组背包。这道题虽然后来WA,参考了别人的代码,更正了一两行代码后才AC。但是CODING之前,自己思考了很久,居然想到了可以抽象出分组背包的思路,感到很欣慰。大概是因为当时自己看纸质版的背包九讲的时候,看到分组背包这个地方特别认真吧,看来还是需要好好继续认真自习看书。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值