【bzoj1012】[JSOI2008]最大数maxnumber st表
来源:互联网 发布:淘宝经营地怎么改 编辑:程序博客网 时间:2024/05/21 09:47
Description
现在请求你维护一个数列,要求提供以下两种操作: 1、 查询操作。语法:Q L 功能:查询当前数列中末尾L个数中的最大的数,并输出这个数的值。限制:L不超过当前数列的长度。 2、 插入操作。语法:A n 功能:将n加上t,其中t是最近一次查询操作的答案(如果还未执行过查询操作,则t=0),并将所得结果对一个固定的常数D取模,将所得答案插入到数列的末尾。限制:n是非负整数并且在长整范围内。注意:初始时数列是空的,没有一个数。
Input
第一行两个整数,M和D,其中M表示操作的个数(M <= 200,000),D如上文中所述,满足(0
Output
对于每一个查询操作,你应该按照顺序依次输出结果,每个结果占一行。
Sample Input
5 100A 96Q 1A 97Q 1Q 2
Sample Output
969396
HINT
Source
bzoj大水题,st表直接水过去。
代码:
#include<cmath>#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>using namespace std;const int size=1000010;int st[size][30];int main(){// freopen("1012.in","r",stdin);// freopen("1012.out","w",stdout); int m,mod,n=0; scanf("%d%d",&m,&mod); int lastans=0; while(m--) { char in[10]; int a; scanf("%s%d",in,&a); switch(in[0]) { case 'A': st[++n][0]=(a+lastans)%mod; for(int i=1;i<=log2(n);i++) st[n][i]=max(st[n][i-1],st[n-(1<<(i-1))][i-1]); /* for(int i=n;i>=1;i--) { for(int j=0;j<=log2(n);j++) { printf("%d ",st[i][j]); } puts(""); }*/ break; case 'Q': a=n-a+1; int k=log2(n-a+1); lastans=max(st[n][k],st[a+(1<<k)-1][k]); printf("%d\n",lastans); break; } } return 0;}
1 0
- 【bzoj1012】[JSOI2008]最大数maxnumber st表
- [Bzoj1012][JSOI2008]最大数maxnumber
- bzoj1012[JSOI2008]最大数maxnumber
- [BZOJ1012][JSOI2008]最大数maxnumber
- 【JSOI2008】【BZOJ1012】最大数maxnumber
- 【BZOJ1012】[JSOI2008]最大数maxnumber
- BZOJ1012: [JSOI2008]最大数maxnumber
- bzoj1012: [JSOI2008]最大数maxnumber
- bzoj1012 [JSOI2008]最大数maxnumber
- bzoj1012: [JSOI2008]最大数maxnumber
- 【bzoj1012】[JSOI2008]最大数maxnumber
- [BZOJ1012][JSOI2008]最大数maxnumber
- [BZOJ1012][JSOI2008]最大数maxnumber
- 【bzoj1012】[JSOI2008]最大数maxnumber
- bzoj1012 [JSOI2008]最大数maxnumber
- [JSOI2008] [BZOJ1012] 最大数maxnumber - 单调栈
- BZOJ1012——[JSOI2008]最大数maxnumber
- 【bzoj1012】【JSOI2008】【最大数】【maxnumber】【线段树】
- 【dp】最大全0子矩阵
- 第八周项目(3):顺序串算法1
- struts工作原理
- 第七周项目6--停车场
- 【第7周 项目2 - 建立链队算法库】
- 【bzoj1012】[JSOI2008]最大数maxnumber st表
- 网络PDF---BCM5325E与BCM5241
- JavaWeb-简单的注册登录例子
- windows server 2008中安装bitnami-Redmine-3.1.1-1可能遇到的问题
- 九度OJ 1092:Fibonacci (递归)
- 简单配置实现hbase单机模式
- 第四周项目3——单链表应用(2)
- 用switch语句实现多分支结构
- hdu4258 斜率优化dp