博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
bzoj 3195 奇怪的道路 状压dp
阅读量:6520 次
发布时间:2019-06-24

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

看范围,状压没毛病

但是如果随便连的话给开1<<16,乘上n,m就爆了
所以规定转移时只向回连边
于是想状态数组:f[i][j]表示到i这里i前K位的状态为j(表示奇偶)
发现有条数限制,但是n,m,2^K都比较小,加一维,
f[i][j][k]表示前i位,用j条路,i前的K位状态为j
转移的话,因为1<=|u - v|<=K,
所以转移时必须要保证转移前一位能连到的最远距离是偶数
然后在本位就向回依次连就好了。

#include
#define mod 1000000007using namespace std;int n,m,K,bit[12];long long f[35][35][515];int main(){ bit[0]=1; for(int i=1;i<=10;i++)bit[i]=bit[i-1]<<1; scanf("%d%d%d",&n,&m,&K); f[1][0][0]=1; for(int i=2;i<=n;i++){ for(int k=0;k
>1]=(f[i][j][k>>1]+f[i-1][j][k])%mod; for(int l=1;l<=K;l++) if(i-l>0) for(int j=0;j

转载于:https://www.cnblogs.com/Ren-Ivan/p/7746731.html

你可能感兴趣的文章
Windows Sever关于80端口之争
查看>>
不同连接终端通过密钥方式登录 Linux
查看>>
MySQL 5.0/5.1/5.5/5.6 各版本的主要区别 (主要是在5.0和其他版本的区别)
查看>>
如何调用qq聊天
查看>>
5.7. 保护 Sendmail 的安全
查看>>
一个朋友给我讲了一个笑话,把我笑翻了
查看>>
高德地图
查看>>
iOS开发之自定义UITabBarController
查看>>
selinux指定某个文件夹权限
查看>>
docker桥接网络原理图分享和pipework简单配置
查看>>
linux iptables 实例1
查看>>
我的友情链接
查看>>
我的友情链接
查看>>
Vmware Vcenter6.0 全新安装及群集配置介绍
查看>>
我的友情链接
查看>>
stomp-php
查看>>
Mysql慢查询日志脚本
查看>>
java 浮点数转整数精度处理
查看>>
关于移动端点击a标签去掉背景灰色区域
查看>>
Oracle--始终无法远程登录,配置没问题
查看>>