JZOJ 2645. 【NOIP2011模拟11.1】钓鱼
2024-09-18 16:48:14
题面
分析
状压 \(dp\) 直接上啊!
设 \(f_{t,S,pos}\) 表示 \(t\) 这个时刻之前能钓到的最多的鱼的数量
那么当前为可以钓鱼也可以移动
于是一切都明朗了
\(Code\)
#include<cstdio>
#include<iostream>
#include<cstring>
using namespace std;
int T , Mx , My , A , Q , n , g[15][20000][15];
struct node{
int x , y , d , l , t , f , bz;
}f[20];
int main()
{
scanf("%d%d%d%d%d%d" , &T , &Mx , &My , &A , &Q , &n);
for(register int i = 0; i < n; i++)
scanf("%d%d%d%d%d" , &f[i].x , &f[i].y , &f[i].d , &f[i].l , &f[i].t) ,
f[i].f = (f[i].x == 0) ? 1 : -1;
memset(g , 255 , sizeof g);
g[0][(1 << n) - 1][A] = 0;
for(register int i = 0; i <= T; i++)
for(register int j = 0; j < (1 << n); j++)
for(register int k = 0; k <= Mx; k++)
{
if (g[i][j][k] == -1) continue;
int res = 0 , r = 0;
for(register int l = 0; l < n; l++)
if (f[l].t <= i && (j & (1 << l)))
{
int pos = f[l].x + f[l].f * f[l].d * (i - f[l].t) ,
tl = pos , tr = pos - f[l].f * f[l].l;
if (tl > tr) swap(tl , tr);
if (tl <= k && k <= tr) ++res , r += (1 << l);
}
g[i + 1][j - r][k] = max(g[i + 1][j - r][k] , g[i][j][k] + res);
for(register int l = max(0 , k - Q); l <= min(Mx , k + Q); l++)
g[i + 1][j][l] = max(g[i + 1][j][l] , g[i][j][k]);
}
int ans = 0;
for(register int j = 0; j < (1 << n); j++)
for(register int k = 0; k <= Mx; k++) ans = max(ans , g[T + 1][j][k]);
printf("%d" , ans);
}
最新文章
- WEB项目会话集群的三种办法
- [LeetCode] Surrounded Regions 包围区域
- ng-show与ng-if区别
- MongoDB的下载与安装
- sql 编写横竖表转换
- token原理
- Android 电池电量进度条,上下滚动图片的进度条(battery)
- MVC URL处理
- GDAL1.9.1 IN VS2008 C#中的编译及使用
- awstats 日志分析
- Ubuntu超好用软件:markdown编辑器
- Oracle EBS R12经验谈(二)
- React Native之code-push的热更新(ios android)
- .Net Core AES加密解密
- MyBatis基础入门《二》Select查询
- NOIP队内凉心互测总结(8.22update)
- 【Java】身份证号码验证
- matlab学习(1)strsplit与strtok
- JavaScript 继承总结
- HTML基础知识(w3school)
热门文章
- svn 日常使用的错误集锦
- 协程Part1-boost.Coroutine.md
- Python异步协程(asyncio详解)
- 3.7V升压5V,3.7V转5V电路图芯片
- 真正“搞”懂HTTP协议06之body的玩法(理论篇)
- 【转载】SQL SERVER 中各种存储过程创建及执行方式
- Hive详解(05) - 压缩和存储
- WebGoat-8.2.2靶场之不安全的反序列化漏洞
- 8KB的C#贪吃蛇游戏热点答疑和.NET7版本
- Solon Java Framework v1.12.2 发布