题目传送门

这是一道单调栈的问题,单调栈维护所有数的最大值。

查询操作时只需要二分找答案即可,枚举栈内的数应该也不会超时。

code

/**************************************************************
Problem: 1012
User: yekehe
Language: C++
Result: Accepted
Time:304 ms
Memory:2384 kb
****************************************************************/ #include <cstdio>
using namespace std;
inline int read(){
char c;while(c=getchar(),(c<''||c>'')&&c!='-');int x=,y=;c=='-'?y=-:x=c-'';
while(c=getchar(),c>=''&&c<='')x=x*+c-'';return x*y;
}
int m,d,stuck[][],top,t,now;
char c;
int so(int l,int r,int x){
int mid;
while(l<r){
mid=(l+r)>>;
if(stuck[mid][]<=x)l=mid+;
else r=mid;
}
return l;
}
int main(){
m=read(),d=read();stuck[][]=2e9;
for(int i=;i<=m;i++){
c=getchar();
if(c=='A'){
int x=read();x=(x+t)%d;
while(stuck[top][]<x)
top--;
stuck[++top][]=x;
stuck[top][]=++now;
}
else {
int w=top,v=read();
w=so(,top,now-v);
printf("%d\n",stuck[w][]);
t=stuck[w][];
}
}
return ;
}

O(KM)_k为常数。

BZOJ1012_Maxnumber_KEY的更多相关文章

随机推荐

  1. 【转载】Kali-linux安装之后的简单设置

         1.更新软件源:修改sources.list文件:leafpad /etc/apt/sources.list然后选择添加以下适合自己较快的源(可自由选择,不一定要全部): #官方源deb h ...

  2. delegate 和 event

    delegate 和 event 观察者模式 这里面综合了几本书的资料. 需求 有这么个项目: 需求是这样的: 一个气象站, 有三个传感器(温度, 湿度, 气压), 有一个WeatherData对象, ...

  3. spring集成ehcache本地缓存

    1.maven依赖 <!-- ehcache 相关依赖 --> <dependency> <groupId>net.sf.ehcache</groupId&g ...

  4. shiro注解,初始化资源和权限,会话管理

     有具体问题的可以参考之前的关于shiro的博文,关于shiro的博文均是一次工程的内容  注解: 新建一个类: 此时需要有admin的权限才可以执行下面的代码 public class ShiroS ...

  5. ajax 三级联动商品分类(转载)

    转载  自  jines     http://www.cnblogs.com/lijinblogs/p/5759399.html 思路分析:效果:当页面加载时,利用ajax异步向后台请求数据,加载一 ...

  6. es6之proxy和reflect

    一.proxy //Proxy和Reflect //供应商 let obj={ time:"2017-11-21", name:"net", _r:123 } ...

  7. 二十五、详述 IntelliJ IDEA 提交代码前的 Code Analysis 机制

    在我们用 IntelliJ IDEA 向 SVN 或者 Git 提交代码的时候,IntelliJ IDEA 提供了一个自动分析代码的功能,即Perform code analysis: 如上图所示,当 ...

  8. HDU 1009 FatMouse' Trade(简单贪心 物品可分割的背包问题)

    传送门: http://acm.hdu.edu.cn/showproblem.php?pid=1009 FatMouse' Trade Time Limit: 2000/1000 MS (Java/O ...

  9. tomcat文件夹下各文件夹的作用

    1.bin目录主要是用来存放tomcat的命令,主要有两大类,一类是以.sh结尾的(linux命令),另一类是以.bat结尾的(windows命令). 很多环境变量的设置都在此处. 2.conf目录主 ...

  10. iOS 文件下载及断点续传

    ios的下载我们可以使用的方法有:NSData.NSURLConnection.NSURLSession还有第三方框架AFNetworking和ASI 利用NSData方法和NSURLConnecti ...