摘要:
这是一道树链剖分的模板题,首先要学会线段树、dfs、链式前向星之类的,不然……//打暴力吧 本题很考验代码能力,难度不大,主要是细节繁多。(我调了1h) 树链剖分的原理不再赘述(详见《信息学奥赛一本通·提高版》),主要说一下一些容易错的细节。 ps:本人树链剖分的写法来源于《信息学奥赛一本通·提高版 阅读全文
摘要:
先说80分代码:最基本的混合背包,判断是完全,01,或是多重,再选择。 状态转移方程:f[j]=max(f[j],f[j-co[i]]+v[i]); 再说100分代码:把每个物品进行二进制拆分,分成1,2,4,8,16,32,64 ,,,再把花费和价值乘以次数即可。 例如:某个物品可以用20次,那么 阅读全文
摘要:
本人今天刚刚学会最大流,此题感觉完全没有提高+的难度,仅仅是一个模板最大流,我用了Dinic算法,而且本题数据很小,邻接矩阵存图即可。 注意:本题大小写字母均包括在内!! 被卡了一次10分 Dinic模板的代码 (AC本题) 阅读全文
摘要:
本人是NOIP2018省二的蒟蒻,最近练习状压,总感觉楼下的题解晦涩难懂,我决定自己写一篇题解造福一下广大蒟蒻 首先看数据范围就猜到了状压dp…… 设f[i]表示完成状态i(二进制位,状压)这些歌获得的奖励; 则答案为f[(1<<n)-1]。 对于一个状态i,若第j首歌没完成,即i&(1<<j-1) 阅读全文
摘要:
一道普通的树链剖分模板题,注意细节即可 几个易错点总结: 阅读全文
摘要:
LCA的模板题,以代码为主 阅读全文