洛谷P1198 [JSOI2008]最大数

简单的线段树单点问题。

问题:读入AQ时,按照读入一个字符会MLE,换成读入字符串就可以了。

#include<bits/stdc++.h>

using namespace std;
#define lson l, mid, root << 1
#define rson mid + 1, r, root << 1 | 1 const int maxn = 200005;
long long MAX[maxn << 2], D, t, xx;
int M, len;
char c[5]; inline void pushDown(int root){
MAX[root] = max(MAX[root << 1], MAX[root << 1 | 1]);
}
void update(int l, int r, int root, int pos, long long x)
{
if(l == r){
MAX[root] = x; return;
}
int mid = (l + r) >> 1;
if(pos <= mid) update(lson, pos, x);
else update(rson, pos, x);
pushDown(root);
}
long long query(int l, int r, int root, int L, int R)
{
if(L == l && R == r){
return MAX[root];
}
int mid = (l + r) >> 1;
if(R <= mid) return query(lson, L, R);
else if(L >= mid + 1) return query(rson, L, R);
else return max(query(lson, L, mid), query(rson, mid + 1, R));
}
int main()
{
scanf("%d%lld", &M, &D);
for(int i = 1; i <= M; i++){
scanf("%s%lld", c, &xx);
if(c[0] == 'A'){
xx = (t * 1LL + xx) % D;
len++;
update(1, M, 1, len, xx);
}
else{
t = query(1, M, 1, (int)(len - xx + 1), len) % D;
printf("%lld\n", t);
}
}
return 0;
}

最新文章

  1. Android 图文数据JSON解析,金山词霸每日一句API的调用
  2. 【BZOJ 4598】【SDOI 2016 Round2 Day1 T3】模式字符串
  3. Java 读取大文件方法
  4. 【Origin】 叹文
  5. Regex count lowercase letters
  6. useful-scripts
  7. javascript基础DOM操作
  8. 项目中常用方法总结(将将DataTable数据集映射到实体对象)【转】
  9. 触发按钮改变panel面板上的小圆圈颜色
  10. leetcode Divide Two Integers python
  11. SQL SERVER 2000/2005/2008数据库数据迁移到Oracle 10G细述
  12. win10 uwp BadgeLogo 颜色
  13. 使用QPlainText代替QText
  14. luogu||P1776||宝物筛选||多重背包||dp||二进制优化
  15. 绑定到外部验证服务LDAP、配置 autofs
  16. MySQL 5.7双主同步部分表
  17. socket.io api 总结
  18. Kubernetes介绍
  19. 2016-2017 National Taiwan University World Final Team Selection Contest (Codeforces Gym) 部分题解
  20. java基础-数组的折半查找原理

热门文章

  1. pgsql物理复制(pgsql 备库的搭建以及角色互换,提升)
  2. 七、for循环
  3. TFS 由于服务器时钟设置可能不正确,无法更新数据。请与 Team Foundation Server 管理员联系。
  4. Delphi 帮助的使用
  5. Linux系统Tomcat进程使用shutdown无法关闭进程
  6. python编码环境安装与基本语法
  7. 裸机开发体验之led快速体验
  8. Nagios监控系统部署(源码)(四)
  9. Vue基础第三章 - 计算属性
  10. div中的图片跑出来