博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
UVALive 4794 Sharing Chocolate(状压,枚举子集)
阅读量:7221 次
发布时间:2019-06-29

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

n的规模可以状压,f[x][y][S]表示x行,y列,S集合的巧克力能否被切割。

预处理出每个状态S对应的面积和sum(S),对于一个合法的状态一定满足x*y=sum(S),实际上只有两个变量是独立的。

而且有x,y等效与y,x,那么这里取max(x,y)。

转移的时候枚举S的非空真子集,横着切或者竖着切。

边间是到达一个合法的x,y,S,其中S中只有一个元素。

复杂度O(x*3^n)

#include
using namespace std;const int Mx = 101,Mxs = 1<<16;bool meo[Mx][Mxs];int sumA[Mxs];int vis[Mx][Mxs], clk;//避免memsetint a[16],n;int ss[17];bool dfs(int x,int y,int S){ if(x
>i&1) sumA[S] += a[i]; } } clk++; printf("Case %d: %s\n",clk,dfs(x,y,mxs-1)?"Yes":"No"); } return 0;}

 

转载于:https://www.cnblogs.com/jerryRey/p/4847041.html

你可能感兴趣的文章
aspcms后台拿shell漏洞(非添加模块)及修复方法
查看>>
C语言冒泡排序法
查看>>
B2B行业门户网站群发邮件时间及发送频率
查看>>
关于虚拟机能ping通物理机,而物理机ping不通虚拟机问题解决。
查看>>
同台机器启动多个mysql
查看>>
iframe 跨域高度自适应
查看>>
struts2+hibernate3+spring3(ssh2)框架下的web应用
查看>>
Linux下的三个时间属性
查看>>
semanage
查看>>
[case分享]Exchange 2010 登陆OWA查看邮件出现Rights managem operation failed
查看>>
linux dd 读取 写入磁盘速度
查看>>
dmidecode查看linux硬件信息
查看>>
linux监控对象及重要性
查看>>
walle-web自动化部署配置
查看>>
opencv轮廓提取、轮廓识别相关要点
查看>>
BOOST.ASIO源码剖析(一)
查看>>
过滤squidlog中各个链接的大小
查看>>
我的友情链接
查看>>
使用AnyChat如何实现任意两用户之间的音视频交互
查看>>
【个人小结】项目公共js的配置,解决不同页面多个配置修改的问题
查看>>