
状压dp
gongyuandaye
不要再问我会不会写可持久化非确定状态AC自动分块维护线段平衡仙人掌优化最小费用最大流预处理混合图上莫比乌斯反演莫队带花舞蹈链并查集树状数组套主席树预处理动态DP分治FFT求多项式逆元对数函数的指数函数用可持久化并查集合并最小费用循环流上插头DP了。
展开
-
UVA 11825 Hackers' Crackdown (枚举状态子集)
题意:有n台电脑,每台电脑都有n种服务,且都跟一定数量的电脑相互连接。黑客可以在电脑上种特定病毒使某种服务摧毁,且与之连通的电脑的某种服务也会摧毁,每台电脑只能种一种病毒,求最多能使多少种服务崩溃(即所有电脑上的某种服务全部摧毁)。题解:枚举状态子集。st[i]st[i]st[i]:与第iii台电脑直接相连的电脑,标记为一个状态。cover[i]cover[i]cover[i]:包含状态ii...原创 2020-04-30 16:19:45 · 264 阅读 · 0 评论 -
UVA 10817 Headmaster's Headache (状压dp)
题意:s门课,m个现有老师,n个应聘者,每个人给出工资和能教的课,每个人能同时教多门课,每门课至少需要两人教,求招聘需要的最少工资。题解:状压dps0s0s0表示0人教课程集合,s1s1s1表示1人教课程集合,s2s2s2表示2人教课程集合。因为每位老师可以同时教多门课,要花费最小,那就全教。用dp[i][s1][s2]dp[i][s1][s2]dp[i][s1][s2]存储当前状态的最小...原创 2020-04-30 12:07:55 · 162 阅读 · 0 评论 -
HDU 4462 Scaring the Birds (枚举状态子集)
题意:n x n的网格种庄稼,有k个坑位放稻草人,每个坑位都有一定的覆盖距离r(曼哈顿距离),求最少需要用几个坑位就能把所有庄稼覆盖。题解:枚举状态子集枚举k个坑位的每一种情况,对于第iii个坑位,将它覆盖的范围标记,最后遍历所有庄稼是否全部覆盖,更新最小值即可。注意坑位不需要覆盖,即直接标记。在标记覆盖范围的时候,一开始用dfs,但是t了,因为每从一个坑位出发,为避免别的坑位的影响,都要...原创 2020-04-24 17:37:15 · 227 阅读 · 0 评论 -
POJ 3254 Corn Fields (状压dp)
题意:在一片n行m列的草地上(用0和1矩阵表示),1表示能放牛,0表示不能放。在草地上放牛并且牛不能相邻,问有多少种放法(一头牛都不放也算一种)。题解:状压dp用row[i]row[i]row[i]存放第iii行的情况(二进制转十进制),用st[i]st[i]st[i]表示满足条件即不存在相邻情况的状态((i & i << 1) == 0),用dp[i][j]dp[i][j...原创 2020-04-24 11:37:26 · 142 阅读 · 0 评论 -
CodeForces 165E Compatible Numbers (状压dp)
题意:给出一串序列,为每个元素a在序列中找到一个b,使得a&b = 0,若找不到,对应输出-1。The first line contains an integer n (1 ≤ n ≤ 106) — the number of elements in the given array. The second line contains n space-separated integer...原创 2020-04-24 10:28:02 · 174 阅读 · 0 评论 -
LightOJ 1287 Where to Run (期望+状压dp+记忆化搜索)
题意:给出无环图,小偷一开始在起点0,走过的点不能再走,当还有路可以走时,可以选择停留5min,相当于加一个自环,求最后无路可走的时间期望。题解:期望+状压dp+记忆化搜索因为n只有15,用状压dp。我们用dp[u][sta]dp[u][sta]dp[u][sta]表示在点u,状态为sta(即表示走过了那些路口)的时间期望,知道起点,然后逆推。用cnt表示可走的路数量,cnt为0时dp[u...原创 2020-04-16 15:58:49 · 259 阅读 · 0 评论 -
HDU 1074 Doing Homework (状压dp)
题意:有nnn门课,给出课的名称,ddl,所需时间,然后要让超出ddl的时间数之和最小。题解:状压dp用二进制枚举所有状态,再遍历当前状态的所有子状态(1),倒推过去取最大就可以。见代码注释。#define _CRT_SECURE_NO_WARNINGS#include<iostream>#include<string>#include<cstring&g...原创 2020-04-07 21:39:13 · 299 阅读 · 0 评论