BZOJ2093 : [Poi2010]Frog
从左往右维护两个指针l,r表示离i最近的k个点的区间,预处理出每个点出发的后继,然后倍增。
#include<cstdio>
typedef long long ll;
const int N=1000010,BUF=20000000,OUT=8000000;
int n,k,i,l=1,r,f[N],g[N],t[N],Outn[20],Outcnt;ll m,a[N];char Buf[BUF],*buf=Buf,Out[OUT],*ou=Out;
inline ll read(){ll a=0;while(*buf<48)buf++;while(*buf>47)a=a*10+*buf++-48;return a;}
inline void write(ll x){for(Outcnt=0;x;x/=10)Outn[++Outcnt]=x%10+48;while(Outcnt)*ou++=Outn[Outcnt--];*ou++=32;
}
int main(){fread(Buf,1,BUF,stdin),n=read(),k=read(),m=read();for(i=1;i<=n;a[i++]=read());for(r=f[t[1]=1]=k+1,i=2;i<=n;i++){while(r<n&&a[r+1]-a[i]<a[i]-a[l])l++,r++;f[i]=a[r]-a[i]>a[i]-a[l]?r:l,t[i]=i;}while(m){if(m&1){for(i=1;i<=n;i++)g[i]=f[t[i]];for(i=1;i<=n;i++)t[i]=g[i];}m>>=1;for(i=1;i<=n;i++)g[i]=f[f[i]];for(i=1;i<=n;i++)f[i]=g[i];}for(i=1;i<=n;i++)write(t[i]);return fwrite(Out,1,ou-Out-1,stdout),0;
}
转载于:https://www.cnblogs.com/clrs97/p/4403143.html
BZOJ2093 : [Poi2010]Frog相关推荐
- bzoj2093【POI2010】Frog
2093: [Poi2010]Frog Time Limit: 10 Sec Memory Limit: 259 MB Submit: 337 Solved: 92 [ Submit][ St ...
- [颓废史]蒟蒻的刷题记录
QAQ蒟蒻一枚,其实我就是来提供水题库的. 以下记录从2016年开始. 1.1 1227: [SDOI2009]虔诚的墓主人 树状数组+离散化 3132: 上帝造题的七分钟 树状数组 二维区间加减+查 ...
- bzoj2091: [Poi2010]The Minima Game DP
2091: [Poi2010]The Minima Game DP 链接 https://www.lydsy.com/JudgeOnline/problem.php?id=2091 思路 这类问题好迷 ...
- hdu 5037 Frog 贪心 dp
哎,注意细节啊,,,,,,,思维的严密性..... 11699193 2014-09-22 08:46:42 Accepted 5037 796MS 1864K 2204 B G++ czy Frog ...
- Frog Jumps CodeForces - 1324C(二分)
There is a frog staying to the left of the string s=s1s2-sn consisting of n characters (to be more p ...
- atcoder A - Frog 1(DP)
A - Frog 1 Time Limit: 2 sec / Memory Limit: 1024 MB Score : 100100 points Problem Statement There a ...
- P3511 [POI2010]MOS-Bridges(网络流/欧拉回路)
P3511 [POI2010]MOS-Bridges 给出一个图,边正着走和反着走的边权不同,求解最大边权最小的欧拉回路,输出方案. 首先看到最大边权最小我们就可以想到二分答案,然后现在在剩余的图上我 ...
- 【bzoj2084】[Poi2010]Antisymmetry
2084: [Poi2010]Antisymmetry Time Limit: 10 Sec Memory Limit: 259 MB Submit: 1205 Solved: 756 [Subm ...
- 华为抓取错误日志在哪里_抓取网址进行分析爬虫工具Screaming Frog SEO Spider for Mac...
Screaming Frog SEO Spider for Mac是一款专门用于抓取网址进行分析的网络爬虫开发工具,你可以通过这款软件来快速抓取网站中可能出现的损坏链接和服务器错误,或是识别网站中临时 ...
最新文章
- C语言结构体自动初始化实现,C语言中结构体(struct)的几种初始化方法
- 前端综合能力系列之git与gitflow
- 为啥总让我“先去博客园其他网站逛逛”?
- statistics DATA in SHANGHAI
- 爬虫开发10.scrapy框架之日志等级和请求传参
- 使用javassist动态注入代码
- Feign深入学习(二)
- 获取浏览器屏幕高度(js,jq) - 进击的小牛牛 - 博客园
- LeetCode 239:滑动窗口最大值 思考分析
- HttpwebRequest - 带ViewState的网页POST请求
- flash 图片有描边 html,Flash遮罩制作线条逐渐显示的汽车轮廓动画效果
- P、NP、NPC和NP-Hard相关概念的图形和解释
- 学习MyBatis-Plus
- Jetson Nano | DeepStream部署Yolov5(Pytorch模型-->wts 文件-->TensorRT模型)
- CSS中absolute和relative
- 大数据可视化陈为智慧树_知到智慧树大数据可视化网课答案
- vue 如何调用微信分享_Vue项目通过JSSDK调用微信分享接口
- 大数据——何谓“大”
- Axios源码深度剖析
- 光时域反射仪 具备哪些功能 推荐哪个品牌
热门文章
- 泰克示波器查眼图_泰克示波器
- js reduce实现中间件_实现redux中间件-洋葱模型
- i386和X86各是什么意思
- 每天一道LeetCode-----找到由连续数字组成的数组中缺失的那个连续值
- ols残差_python数据关系型图表散点图系列残差分析图
- iOS Hacker Xcode玩转arm64汇编基础
- Uart接口的详细解释
- ksnapshot运行look up error undefined symbol错误解决方案
- pytorch对张量的一些常用处理以及numpy对数组的一些常用处理
- linux之父密码,Linux之父十大名言···