博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
BZOJ 2734: [HNOI2012]集合选数
阅读量:7240 次
发布时间:2019-06-29

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

我们构造一个矩阵,左上角为1,右边的数为左边的数*3,下边的数为上边的数*2,那么这个矩阵的列数不会超过11,行数不会超过17

对于矩阵中的数,只要选出的两个数的位置不是四联通,就是合法的

状压一行,转移

可能有多个矩阵,即左上角不一定是1

枚举左上角,且保证这个数不被包含在其他矩阵中,那么矩阵之间就没有相同的数,互不影响,乘法原理即可

#include
using namespace std;const int mod=1e9+1;int n,A[18][18],F[18][10005],line[18],vis[100005];int solve(int ST){ int M; A[0][0]=ST; for (M=0; A[M][0]<=n; M++) A[M+1][0]=A[M][0]*2; for (int i=0; i
>1))) F[0][i]=1; for (int i=0; i
>1)) && !(pre&now)) (F[i+1][now]+=F[i][pre])%=mod; int ans=0; for (int i=0; i<(1<

  

转载于:https://www.cnblogs.com/silenty/p/9867114.html

你可能感兴趣的文章
Spring中Bean的五个作用域
查看>>
hadoop之 distcp(分布式拷贝)
查看>>
Java后端程序员1年工作经验总结
查看>>
使用Vundle管理配置Vim的插件
查看>>
JDBC连接池&DBUtils使用
查看>>
可以通过shadowserver来查看开放的mdns(用以反射放大攻击)——中国的在 https://mdns.shadowserver.org/workstation/index.html...
查看>>
IOS系统控件高度
查看>>
Flink - ResultPartition
查看>>
2017.10.09 穆瑞课KUKA机器人培训视频的感想
查看>>
Jsoup
查看>>
python中的中文编码问题
查看>>
安卓播放音频
查看>>
in linux system of ftp command
查看>>
Win API:之GetCurrentThread、GetCurrentThreadId、GetCurrentProcess、GetCurrentProcessId
查看>>
***PHP $_FILES函数详解 + PHP文件上传 move_uploaded_file() 参数的正确写法
查看>>
Mysql中Group By使用Having语句配合查询(where和having区别)
查看>>
C#连接数据库
查看>>
重定向和管道的区别
查看>>
分层、链式分析、url、联系的长度
查看>>
C++实现ping功能<转>
查看>>