题目链接

  水题,数据范围提示得太明显了吧,不用动脑子都能知道是状压。

  不过还是有坑(当然更可能是我脑子有坑)

  f[i][j][k][l]表示当前是第i秒,萃香在(j,k),已经抱到的西瓜状态是l的最少移动次数,然后用BFS一样的办法暴力转移就行,复杂度完全过得去。

  

#include<cstdio>
#include<cstring>
#include<algorithm>
#include<cstdlib>
#include<cctype>
#define maxp 7
#define maxt 105
#define maxn 12
using namespace std;
inline long long read(){
long long num=,f=;
char ch=getchar();
while(!isdigit(ch)){
if(ch=='-') f=-;
ch=getchar();
}
while(isdigit(ch)){
num=num*+ch-'';
ch=getchar();
}
return num*f;
} int f[maxt][maxp][maxp][<<maxn];
int q[maxt][maxp][maxp];
int tot;
int ux[]={,,,-,};
int wy[]={,,,,-}; int main(){
int h=read(),w=read(),t=read(),sx=read(),sy=read(),n=read(),m=read();
int lim=<<m;
memset(f,/,sizeof(f)); int inf=f[][][][];
f[][sx][sy][]=;
for(int i=;i<=n;++i){
int t1=read(),t2=read(),opt=read();
int to=t2;
if(t2>t) t2=t;
if(opt==){
tot++;
for(int j=t1;j<to;++j){
int x=read(),y=read();
q[j][x][y]=tot;
}
}
else{
for(int j=t1;j<to;++j){
int x=read(),y=read();
q[j][x][y]=-;
}
}
}
for(int tme=;tme<=t;++tme){
for(int i=;i<=h;++i)
for(int j=;j<=w;++j)
for(register int k=;k<lim;++k){
if(f[tme][i][j][k]==inf) continue;
for(int l=;l<=;++l){
int x=i+ux[l],y=j+wy[l];
if(x==||y==||x>h||y>w||q[tme+][x][y]==-) continue;
int ret=q[tme+][x][y],now=;
if(ret) now=<<(ret-);
f[tme+][x][y][k|now]=min(f[tme+][x][y][k|now],f[tme][i][j][k]+);
}
if(q[tme+][i][j]!=-){
int ret=q[tme+][i][j],now=;
if(ret) now=<<(ret-);
f[tme+][i][j][k|now]=min(f[tme+][i][j][k|now],f[tme][i][j][k]);
}
}
}
int ans=inf;
for(int i=;i<=h;++i)
for(int j=;j<=w;++j)
if(ans>f[t][i][j][lim-]) ans=f[t][i][j][lim-];
if(ans==inf) ans=-;
printf("%d",ans);
}

【Luogu】P3786萃香抱西瓜(状压DP)的更多相关文章

  1. 洛谷 - P3786 - 萃香抱西瓜 - 状压dp

    重构一下就过了,不知道之前错在哪里. #include<bits/stdc++.h> using namespace std; typedef unsigned long long ull ...

  2. [luogu P3786]萃香抱西瓜 [spfa][状态压缩]

    题目背景 伊吹萃香(Ibuki Suika)正在魔法之森漫步,突然,许多西瓜(Suika)从四周飞来,划出了绚丽的轨迹.虽然阵势有点恐怖,但她还是决定抱走一些西瓜. 题目描述 萃香所处的环境被简化为一 ...

  3. Luogu P4892 GodFly的寻宝之旅【状压dp】By cellur925

    题目传送门 又是一道状压+计数类好题hh(真香).数据范围非常友好,告诉我们\(n<=18\),非常符合状压的性质. 其实感觉和\(Hamilton\)路径那题还是有些相似的,我们可以类似地设计 ...

  4. 【Luogu】P2704炮兵阵地(状压DP)

    题目链接 话说还真没见过能影响两行的状压.想了半天想出来f数组再多一维就能表示,但是没想到怎么才能不爆空间…… 也是从这道题里学到的一个妙招. 可以把合法状态存到一个数组里,然后用数组下标来映射状态. ...

  5. 【Luogu】P2150寿司晚宴(状压DP)

    题目链接 反正……我是没什么想法了,全程看题解 (或者说自己想了半天错解) 因为大于根n的质数最多只会在一个数里出现一种,所以可以把数拆成两部分:小数的二进制集合和大数. 然后把大数一样的放到一起DP ...

  6. 【Luogu】P1879玉米田(状压DP)

    题目链接 数据范围这么小,难度又这么大,一般就是状态压缩DP了. 对输入进行处理,二进制表示每一行的草地状况.如111表示这一行草地肥沃,压缩成7. 所以f[i][j]表示第i行状态为j时的方案数 状 ...

  7. [Luogu P3959] 宝藏 (状压DP+枚举子集)

    题面 传送门:https://www.luogu.org/problemnew/show/P3959 Solution 这道题的是一道很巧妙的状压DP题. 首先,看到数据范围,应该状压DP没错了. 根 ...

  8. [Luogu P2831] 愤怒的小鸟 (状压DP)

    题面: 传送门:https://www.luogu.org/problemnew/show/P2831 Solution 首先,我们可以先康一康题目的数据范围:n<=18,应该是状压或者是搜索. ...

  9. 孤岛营救问题(BFS+状压DP)

    孤岛营救问题 https://www.luogu.org/problemnew/show/P4011 用状压DP标记拿到钥匙的数量 #include<iostream> #include& ...

随机推荐

  1. 有一个无效 SelectedValue,因为它不在项目列表中

    “Drp_XX”有一个无效 SelectedValue,因为它不在项目列表中 出现以上异常的原因肯定是将DrowDownList控件的SelectedValue属性赋值为一个列表中不存在的值.那么我们 ...

  2. BZOJ 1137: [POI2009]Wsp 岛屿 半平面交

    1137: [POI2009]Wsp 岛屿 Time Limit: 10 Sec  Memory Limit: 162 MBSec  Special JudgeSubmit: 165  Solved: ...

  3. Xamarin 常见问题解决方案汇总

    出现如下提示,错误: 找不到或无法加载主类 com.sun.tools.javac.MainMSB6006: 或 閿欒: 绋嬪簭鍖卆ndroid.support.v4.view.ViewPager涓嶅 ...

  4. 字符编码:BSTR

    typedef wchar_t WCHAR; typedef WCHAR OLECHAR; typedef OLECHAR __RPC_FAR *BSTR;;

  5. C#数组协方差

    对于任意两个“引用类型”A和B,如果存在从A到B的隐式引用转换或显式引用转换,则也一定存在从数组类型A[R]到数组类型B[R]的相同的引用转换,其中R可以是任何给定的“秩说明符”,但是这两个数组类型必 ...

  6. echarts事件中获取当前实例

    直接使用this即可

  7. iPhone如何设置自定义铃声?无需连接电脑,轻松几步就搞定!

    转载自: https://baijiahao.baidu.com/s?id=1594988016778457969&wfr=spider&for=pc 受够了iPhone自带的千篇一律 ...

  8. Hogan的安装和使用

    Hogan的安装和使用 通过npm安装hogan: npm install hogan.js --save-dev CommonJs下的使用方式: // 引入hogan var hogan = req ...

  9. 教程笔记《JavaScript深入浅出》

    一.数据类型 javascript是弱数据类型语言,不需要显式的定义类型,一共有如下六种数据类型 五种基本类型:number,string,boolean,null,undefined 一种复合类型: ...

  10. Applied Nonparametric Statistics-lec1

    参考网址: https://onlinecourses.science.psu.edu/stat464/node/2 Binomial Distribution Normal Distribution ...