今天是来南中集训的第一天,虽然以往都来集训过几次,可这次不太一样,这次是以一名新高一同学的身份正式加入到南中信息学的队伍中,和各位大佬一起学习,挺好!
又是一个人住一间宿舍,大晚上的外面有只青蛙在不停地咕咕叫,还挺有规律,风扇转得也是吱呀吱呀地响,好难入睡!希望明天那只青蛙跑去别的地方,不然我投诉他哦!
这里气氛挺轻松,老师说这几天自学,然后晚上讲课,lon今天布置了任务,学习背包九讲,背包之前学过,可也没学太深,我在网上找了一篇比较好的博客研究,加上晚上lon给我们讲课,有一些新的理解
- 知道01背包和完全背包的第二层循环为什么不一样了,01背包是为了保证每件物品只能选一次,倒序做可以保证前面的不会被更新,完全背包每件物品可以选无数次,正序做可以保证前面选过的物品,到了后面还能被选
- 多重背包用普通的做法有时候会超时,可以二进制枚举,将一个数量拆分成几个二进制数来做,可以省很多时间,get到了
做了两题
☛多重背包(二进制拆分)
☛混合背包
安利这篇博客,讲得很详细☛背包九讲
3. 分组背包lon在推二维DP的时候好像不知不觉推出了正解?这叫一维的DP怎么活…tql
4. 当W很大很大,V很小很小的时候,可以把f数组重新定义,设f[i]表示得到价值为i占用的最小内存w,然后就可以正常地推下去,有点神奇~
还有用单调队列优化多重背包我还没搞懂,慢慢理解吧
今天就这个亚子吧,有收获的一天呐(`▽′)/
镇图: