随笔分类 - 算法:状压dp
摘要:题目 欧贝利斯克的巨神兵很喜欢有向图,有一天他找到了一张$n$个点$m$条边的有向图。 欧贝利斯克认为一个没有环的有向图是优美的,请问这张图有多少个子图(即选定一个边集)是优美的? 答案对$10^9+7$取模。 对于 40% 的数据$n≤5,m≤20$ 对于 60% 的数据$n≤10$; 对于 80
阅读全文
摘要:$dp[i][S]$表示选到某个男生,女生的选择集合。然后暴力转移,复杂度$O(2^{n m} K m)$ 极限数据一亿多,然而卡过去了。 cpp include define clr(x,y) memset(x,y,sizeof(x)) using namespace std; int n,m,a
阅读全文
摘要:其实这是一道简单题不知道为什么1AC 定义$dp[i][S]$表示前$i$的长度,取了$S$这个集合,这样就可以用$dp[i][S]$更新$dp[i+1][S与v]$。 最后统计一下答案就好了。 代码 cpp include using namespace std; const int M=100
阅读全文

浙公网安备 33010602011771号