博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
hdu5823
阅读量:5994 次
发布时间:2019-06-20

本文共 607 字,大约阅读时间需要 2 分钟。

官方题解:直接状压dp就行了,f[S]表示点集S的色数,枚举子集转移(子集是独立集)。这样是3^n的。

这样就可以过了……(独立集就是点互相没有连边)

学到了一个穷举子集的简便写法

for (int j=i; j; j=(j-1)&i)

1 #include
2 3 using namespace std; 4 int f[300010],q[20],n,t; 5 bool v[300010]; 6 char a[20][20]; 7 unsigned int d[300010]; 8 9 void dfs(int i,int st,bool ff)10 {11 if (i==n) v[st]=ff;12 else {13 dfs(i+1,st,ff);14 if (ff)15 {16 for (int j=1; j<=t; j++)17 if (a[q[j]][i]=='1') {ff=0;break;}18 }19 q[++t]=i;20 dfs(i+1,st|(1<
View Code

 

转载于:https://www.cnblogs.com/phile/p/6399484.html

你可能感兴趣的文章
Phoenix与Squirrel 是什么?
查看>>
Photoshop制作的ico图标方法
查看>>
HDU 1241 Oil Deposits (DFS)
查看>>
【翻译自mos文章】注意: ASMB process exiting due to lack of ASM file activity
查看>>
Linux 线程浅析
查看>>
ucgui界面设计演示样例2
查看>>
蓝桥杯练习系统——基础练习 十六进制转十进制
查看>>
Mac: Android studio+VirtualBox+Genymotion
查看>>
The way to Go(4): Go runtime及解释器
查看>>
简易RPC框架-上下文
查看>>
26.使用IntelliJ IDEA开发Java Web项目时,修改了JSP后刷新浏览器无法及时显示修改后的页面...
查看>>
自定义ViewGroup
查看>>
25.管道流
查看>>
2017-2018:时间戳
查看>>
php实现 明明的随机数
查看>>
Guava中针对集合的 filter和过滤功能
查看>>
小程序顶部导航栏的自定义
查看>>
ZooKeeper系列(3):znode说明和znode状态
查看>>
Java Arrays.sort源代码解析
查看>>
使用buildroot创建自己的交叉编译工具链【转】
查看>>