随笔分类 -  状压DP

摘要:Solution 数据范围疯狂暗示状压,可是一开始发现状态特别难受。 将每一层的奇偶性状压,预处理所有状态的奇偶性。每一层的输入代表的其实可以是下一层某个点可以被从这一层哪些点转移到。 所以枚举每个状态,再枚举下一层转移到哪个点,统计这个点被这个状态更新的话正边和反边分别的奇偶性,转移即可。 第二层 阅读全文
posted @ 2018-11-08 16:16 Wans_ovo 阅读(180) 评论(0) 推荐(0)
摘要:Solution 签到水题,直接状压枚举所有情况算出答案即可。 Code Solution 考完看题解泪流满面了QAQ 题中不断强调两点之间只有一条简单路径啊!!!那不就是树嘛QAQ 而且在特定的一个矩阵中也要满足这个性质,那么这个矩阵中所有联通块相当于森林,显然联通块数等于点数减边数。 所以对每个 阅读全文
posted @ 2018-11-02 17:15 Wans_ovo 阅读(187) 评论(0) 推荐(0)
摘要:Solution 据说正解DP30行??? 然后写了100行的状压DP?? 疯狂特判,一算极限时间复杂度过不了aaa!! 然而还是过了....QAQ 所以我定的状态是待转移的位置的前三位,用6位二进制位表示,每2位表示一个位置的状态。然后特判转移就可以了QAQ Code Solution 完全把题意 阅读全文
posted @ 2018-10-26 20:06 Wans_ovo 阅读(264) 评论(0) 推荐(0)
摘要:3195: [Jxoi2012]奇怪的道路 Description 小宇从历史书上了解到一个古老的文明。这个文明在各个方面高度发达,交通方面也不例外。考古学家已经知道,这个文明在全盛时期有n座城市,编号为1..n。m条道路连接在这些城市之间,每条道路将两个城市连接起来,使得两地的居民可以方便地来往。 阅读全文
posted @ 2018-10-24 17:38 Wans_ovo 阅读(231) 评论(2) 推荐(0)
摘要:4565: [Haoi2016]字符合并 Description 有一个长度为 n 的 01 串,你可以每次将相邻的 k 个字符合并,得到一个新的字符并获得一定分数。得到的新字 符和分数由这 k 个字符确定。你需要求出你能获得的最大分数。 有一个长度为 n 的 01 串,你可以每次将相邻的 k 个字 阅读全文
posted @ 2018-10-16 11:20 Wans_ovo 阅读(315) 评论(0) 推荐(0)
摘要:Eat the Trees Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 5079 Accepted Submission(s): 2628 P 阅读全文
posted @ 2018-10-16 09:16 Wans_ovo 阅读(412) 评论(0) 推荐(0)
摘要:考场上几乎是一看就看出来轮廓线叻...可是调了两个小时打死也过不了手出样例!std发下来一对,特判对的啊,转移对的啊,$dp$数组竟然没有取max!!! 某位考生当场死亡。 结果下午又请了诸位dalao来看为什么剩下wa两个点!结果数组开小。 某位考生再次死亡。 我们可以发现在模数为质数时,可以直接 阅读全文
posted @ 2018-10-04 21:04 Wans_ovo 阅读(201) 评论(0) 推荐(0)
摘要:刘汝佳蓝书上的题,标程做法是从终点倒着$spfa$,我是二分答案正着$spfa$判断可不可行。效果是一样的。 【注意】多组数据建边一定要清零啊QAQ!!! 第一眼看到“最大独立集”,想的完了完了,不会啊怎么办。五分钟后,woc这不就是最长上升子序列吗,好水啊...然后心想这道题班上可能会全a吧,t3 阅读全文
posted @ 2018-09-07 19:58 Wans_ovo 阅读(212) 评论(0) 推荐(0)
摘要:nlogn做法,dp[i]表示当前长度为i的最长上升子序列末尾元素的值。 不会写lower_bound(qwq,贴一个以前的好看点的代码 法一:用度数计算,可以证明最后答案等于选出的k个点的总度数-2*(k-2)-2,表示选择的一条链上去掉两头每个点少减两个度数,两头少减一个度数,就算有分叉也不影响 阅读全文
posted @ 2018-08-14 16:43 Wans_ovo 阅读(160) 评论(0) 推荐(1)