BestCoder Round #89 1002 Fxx and game
2024-08-21 09:06:06
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5945
分析:
很容易想到用bfs,然而会超时,几乎是O(xt)了
这里用单调队列优化,
首先反着来,f[x] 为 x 要到1 的步数,f[1] = 0;
1、第一个条件就是 队列里面的元素个数小于t,
2、单调队列是个单调递减的队列。
#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm> using namespace std; const int maxn = + ;
int dis[maxn];
int d[maxn]; #define inf 0x3f3f3f3f int main()
{
int t;
cin>>t;
while(t--) {
int x,k,t;
cin>>x>>k>>t; int l,r; l = r = ;
dis[] = ;
d[] = ; for(int j=;j<=x;j++) { dis[j] = inf; while(l<=r&&d[l]<j-t) l++;
if(l<=r) dis[j] = dis[d[l]] + ;
if(j%k==) dis[j] = min(dis[j],dis[j/k]+);
while(l<=r&&dis[d[r]]>=dis[j]) r--;
d[++r] = j; } printf("%d\n",dis[x]);
} return ;
}
最新文章
- MySQL练习-employees数据库(一)
- 分享50款 Android 移动应用程序图标【下篇】
- iOS:界面适配(三)--iPhone不同机型适配 6/6plus 前
- jiffies
- 如何使用编辑模板在ASPxGridView中进行新增修改(除去常规的gridviw模板编辑外)
- Android Metro风格的Launcher开发系列第一篇
- cocos2dx Tab选项卡控件的实现
- javaScripte 创建对象。。
- 在CentOS上为DiscuzX3安装ImageMagick支持。
- apache添加fastcgi支持
- WIFI实时监控追踪小车演示视频——安卓端、小车
- 【数论&#183;欧拉函数】SDOI2008仪仗队
- CSS中的BFC
- jdbc访问pipelinedb
- iptables防火墙常用配置介绍
- 十、uboot 代码流程分析---run_main_loop
- .net分布式系统架构的思路
- .NET 中的 async/await 异步编程
- Android中aar和jar文件的认识
- AJAX 跨域问题 php