博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
BZOJ 1087 互不侵犯King 状态压缩DP
阅读量:6253 次
发布时间:2019-06-22

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

题目链接:

题目大意;

在N×N的棋盘里面放K个国王,使他们互不攻击,共有多少种摆放方案。国王能攻击到它上下左右,以及左上左下右上右下八个方向上附近的各一个格子,共8个格子。

思路:

状态压缩,预处理出每一行的合法状态,连续的两个1在一起的状态为不合法状态。

预处理出从上一行到下一行的合法情况,直接每一行推过来即可。

1 #include
2 #define IOS ios::sync_with_stdio(false);//不可再使用scanf printf 3 #define Max(a, b) ((a) > (b) ? (a) : (b))//禁用于函数,会超时 4 #define Min(a, b) ((a) < (b) ? (a) : (b)) 5 #define Mem(a) memset(a, 0, sizeof(a)) 6 #define Dis(x, y, x1, y1) ((x - x1) * (x - x1) + (y - y1) * (y - y1)) 7 #define MID(l, r) ((l) + ((r) - (l)) / 2) 8 #define lson ((o)<<1) 9 #define rson ((o)<<1|1)10 #define Accepted 011 #pragma comment(linker, "/STACK:102400000,102400000")//栈外挂12 using namespace std;13 inline int read()14 {15 int x=0,f=1;char ch=getchar();16 while (ch<'0'||ch>'9'){
if (ch=='-') f=-1;ch=getchar();}17 while (ch>='0'&&ch<='9'){x=x*10+ch-'0';ch=getchar();}18 return x*f;19 }20 typedef long long ll;21 const int maxn = 2000000 + 10;22 const int MOD = 1000000007;//const引用更快,宏定义也更快23 const int INF = 1e9 + 7;24 const double eps = 1e-10;25 const double pi = acos(-1);26 27 bool Map[520][520];28 bool no[520];//判断状态i是否不合法29 ll dp[10][520][100];//dp[i][j][k] 表示第i行状态为j,且当前放置的数目为k30 int n, k;31 void init()32 {33 for(int x = 0; x < (1<
> n >> k;60 init();61 for(int i = 0; i < (1<

 

转载于:https://www.cnblogs.com/fzl194/p/9737400.html

你可能感兴趣的文章
hive中groupby优化_面试必备技能-HiveSQL优化
查看>>
uni 页面加载完毕_HTML页面生命周期
查看>>
c语言机票座位预定系统_趁东京奥运!日航要免费送5万张国内机票!给非日本居民...
查看>>
创业冲突的五种解决方法是_冲突管理的五种策略
查看>>
lsmw中文显示乱码_中文注释不能在keil 4/5中正常显示——都是方框或乱码?
查看>>
hcg值小于0.1_【原理】JavaScript 中 0.1 + 0.2 为什么不等于 0.3?
查看>>
springboot的jsp应该放在哪_健身小白用2个月亲身经历告诉你小白去健身房,应该做到哪几点...
查看>>
opencv表面缺陷检测_工业产品表面缺陷检测方法
查看>>
kettle使用数据库来生成序列_时间序列数据库Influxdb的使用
查看>>
配置babel_关于 Babel 你必须知道的
查看>>
数据丢失与重复_消息队列重复消费和数据丢失问题(石衫面试突击学习笔记)...
查看>>
摄像头 火狐_为什么谷歌浏览器打不开电脑摄像头?
查看>>
两张图片合成一张_ps技巧:大光比照片后期曝光合成技法
查看>>
码条形码属性_条码生成器如何批量生成code 11码
查看>>
和lua的效率对比测试_不同编程语言能耗不同?看这27种语言对比!
查看>>
让某控件失去焦点_常用基本控件测试用例(一)
查看>>
天气模式_今年台风活跃期即将结束!下周天气将开启“大变脸”模式
查看>>
扫码枪关闭常亮模式_生意好时最怕收银出故障,这几个扫码枪的常见问题你一定要知道...
查看>>
如何双击打开vivado工程_利用TCL重建vivado工程
查看>>
mysql的引双向链表_Mysql高手系列 - 第22篇:mysql索引原理详解(高手必备技能)
查看>>