
背包
火龙果king
一名热爱编程的初中生
互关互关,点个赞吧!
展开
-
洛谷P1441砝码称重(二进制讲法)
bitset可以说是一个多位二进制数,每八位占用一个字节,因为支持基本的位运算,所以可用于状态压缩,n位bitset执行一次位运算的时间复杂度可视为n/32.首先先水一发本题的正解。若s至少有一位为1,则s.any()返回true,s.none()返回false;若s所有位都为0,则s.any()返回false,s.none()返回true;s.set(k,v)把s的第k位改为v,即s[k]=v;s.reset(k)把s的第k位改为0,即s[k]=0;s.flip(k)把s的第k位取反,即s[k]^=1。原创 2023-12-16 09:41:34 · 513 阅读 · 1 评论 -
洛谷最新题解P1782旅行商的背包
首先小S收到的第一批货肯定是使用多重背包,由于数据量过大,所以多重背包使用两种优化方法:单调队列或二进制优化。单调队列不在NOIP考察范围之内,但为了让读者开拓视野。这道题是一道典型的多重背包+完全,个人感觉建议降绿,蓝题不至于。最后将两者所得的结果相加即可。,所以我们使用单调队列。原创 2023-12-02 09:08:22 · 587 阅读 · 0 评论 -
洛谷背包专题P2677 最大约数和
dalao看到这里已经可以划走了,本文主要就是科普一下。首先要遍历一下所有小于S的数的约数,将它们存在B数组里。这里i就相当于01模版里的w体积,Bi相当于c价值。很简单的一道01题目。原创 2023-11-25 09:29:51 · 397 阅读 · 0 评论