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

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

由于n很小(<=15)我们考虑状态压缩

显然可以用三进制(雾)但是太浪费了

我们令f[i][j][s]表示现在已用的积木状态为S,最上面那个积木是第i个,其中这个积木的第j(0<=j<3)条边是竖着的(不在上表面)

转移的时候枚举i'和j‘判断一下即可

由于每个积木边长顺序没有影响所以可以先排序方便比较

#pragma GCC opitmize("O3")#pragma G++ opitmize("O3")#include
#include
#include
using namespace std;int f[16][3][1<<16]={
0},a[20][3]={
{
1<<30,1<<30,1<<30}},n,MS,A=0;inline void max(int& x,int y){ x
=g[0] && f[1]>=g[1];}int main(){ scanf("%d",&n); MS=1<

转载于:https://www.cnblogs.com/Extended-Ash/p/7887155.html

你可能感兴趣的文章
Android Toast
查看>>
JAVA面试常见问题之Redis篇
查看>>
jdk1.8 api 下载
查看>>
getElement的几中属性介绍
查看>>
HTML列表,表格与媒体元素
查看>>
Introduction to my galaxy engine 2: Depth of field
查看>>
设计器 和后台代码的转换 快捷键
查看>>
STL容器之vector
查看>>
数据中心虚拟化技术
查看>>
复习文件操作
查看>>
SQL Server 使用作业设置定时任务之一(转载)
查看>>
第二阶段冲刺-01
查看>>
BZOJ1045 HAOI2008 糖果传递
查看>>
JavaScript 克隆数组
查看>>
eggs
查看>>
oracle 报错ORA-12514: TNS:listener does not currently know of service requested in connec
查看>>
基于grunt构建的前端集成开发环境
查看>>
利用循环播放dataurl的视频来防止锁屏:NoSleep.js
查看>>
python3 生成器与迭代器
查看>>
java编写提升性能的代码
查看>>