【BZOJ2560】串珠子
来源:互联网 发布:可以做地图的软件 编辑:程序博客网 时间:2024/04/28 15:34
广告:
#include <stdio.h>int main(){ puts("转载请注明出处[vmurder]谢谢"); puts("网址:blog.csdn.net/vmurder/article/details/44060425");}
题解:
然后我们可以在从
先确定一个小的连通块,状态为a,然后其它点的状态就是i^a
然后显然
确定一个点x,然后以此为基础枚举连通块就好了。
代码:
#include <cstdio>#include <cstring>#include <iostream>#include <algorithm>#define MOD 1000000007#define N 20#define M 101000using namespace std;int n,S,a[N][N];long long f[M],g[M];int main(){ int i,j,k,now; scanf("%d",&n); for(i=0;i<n;i++)for(j=0;j<n;j++)scanf("%d",&a[i][j]); S=1<<n; for(i=1;i<S;i++) { g[i]=1; for(j=0;j<n;j++)if(i&(1<<j)) for(k=j+1;k<n;k++)if(i&(1<<k)) g[i]=g[i]*(a[j][k]+1)%MOD; f[i]=g[i]; for(j=n-1;j+1;j--) if(i&(1<<j)){now=j;break;} now=i^(1<<now); for(j=now;j;j=(j-1)&now) // 枚举子集 f[i]=(f[i]-g[j]*f[i^j]%MOD+MOD)%MOD; } cout<<f[S-1];}
Qwq
今天下午怎么突然好困。
1 0
- 【BZOJ2560】串珠子
- BZOJ2560 串珠子
- 串珠子-Java
- 编程题:串珠子
- bzoj P2560 串珠子
- bzoj 2560: 串珠子 子集dp
- [子集DP] BZOJ 2560 串珠子
- uva10054--欧拉回路--串珠子
- usaco Broken Necklace (串珠子_最大值)
- bzoj 2560 串珠子 状压dp 容斥
- 数码串珠
- BZOJ2560(dp难)
- 盘菩提子串珠盘的是心情
- 串珠问题(今日头条笔试)
- 《珠珠图案》教程三:串珠图案设计师。
- 棕子
- 子曰
- 子字符串
- 使用plus_archivelog时的备份路径设置
- 黑马程序员——c语言学习—函数参数之传值、传址
- LeetCode:Reorder List
- Orcad画原理图时如何Update Cache
- linux 体会
- 【BZOJ2560】串珠子
- GridView中绑定列网络通讯状态显示
- 2015-3-4ThinkPHP学习日记(asign(),display(),Volist标签)
- Zend Studio 10.5 与 XDebug 调试
- __FILE__,__LINE__,__DATE__,__TIME__, __FUNCTION__
- django资料网址
- AngularJS实现数据可视化
- (ros:robot operating system)cob_simulation報錯
- 安卓手机如何解除root?解除root教程