当我兴高采烈地从“你好C语言”走到“再见C语言”,翻过“温室里的英雄和背包”来到这道题的页面的时候,根本不会想到,这道题将成为我的梦魇。 毕竟这只是一个“升了级”的背包问题,再难也不会难太多吧,而且难度是8分还没有移花接木的9分高?可一切似乎并没有按照我的计划进行。 从10日夜晚到11日上午,我几乎将睡觉外每一寸时间都投入到与这道题的战斗中,然而把英雄们一句接一句的依赖关系放到我可爱的小二维数组里几乎就是我仅凭自己能做到的极限了。 我不甘心,试图用反悔贪心死磕把那些弱鸡英雄一个接一个一组接一组移出我的背包,甚至一度以为离成功只差几行代码。直到我在11日中午终于放弃一切颜面跪求DS老师看到了真正的解法,好家伙,不是“树形DP”就是“二进制状态压缩”。看着那个十分甚至九分新颖的位运算 1<<n,我陷入了沉思,我只是想在一个简单的背包里塞几串英雄,为什么非要让我体验局部最优陷阱的毒打?为什么不能让我用简单的数组加一点点逻辑层层抽丝剥茧接近我苦苦追求的那个所谓“全局最优解”? 吐槽归吐槽,但我还是把DS老师给我的解析全看完了。作为一个30天前连使用getchar都被折磨得死去活来的人,这次面对“树形依赖背包”,我终于学会了放过自己,就让进度继续停在“已完成95%”的地方吧,我累了,管你是否允许,再见。

1 条评论

  • @ 2026-9-23 22:12:26

    苦看两日,依旧未搞懂,先放着呗

    • 1

    信息

    ID
    532
    时间
    1000ms
    内存
    256MiB
    难度
    8
    标签
    递交数
    177
    已通过
    25
    上传者