线段树裸题

难度在于认识到这个没法线性做

#include<cstdio>
using namespace std;
int n,mod,tr[400005];
void insert(int t,int l,int r,int x,int y){
if (l==r){
tr[t]=y;
return;
}
int mid=(l+r)>>1;
if (x<=mid) insert(t<<1,l,mid,x,y);
else insert(t<<1|1,mid+1,r,x,y);
tr[t]=1ll*tr[t<<1]*tr[t<<1|1]%mod;
}
void build(int t,int l,int r){
tr[t]=1;
if (l==r) return;
int mid=(l+r)>>1;
build(t<<1,l,mid);
build(t<<1|1,mid+1,r);
}
int main(){
int T;
scanf("%d",&T);
while (T--){
scanf("%d%d",&n,&mod);
build(1,1,n);
for (int i=1; i<=n; i++){
int cas;
scanf("%d",&cas);
if (cas==1){
int x;
scanf("%d",&x);
insert(1,1,n,i,x);
}
else{
int x;
scanf("%d",&x);
insert(1,1,n,x,1);
}
printf("%d\n",tr[1]);
}
}
return 0;
}

  

最新文章

  1. 《Django By Example》第二章 中文 翻译 (个人学习,渣翻)
  2. 鱼眼模式(Fisheye projection)的软件实现
  3. Java EE之一个表单两个按钮响应不同界面(登录与注册)
  4. Jetstrap 在线构建 Bootstrap 的工具
  5. 什么是Servlet?
  6. [AlwaysOn Availability Groups]SQL Server错误日志(AG)
  7. rqnoj343 mty的考验
  8. Mingyang.net:Controller必需是public吗?
  9. android百度地图开发之自动定位所在位置与固定位置进行驾车,步行,公交路线搜索
  10. Redis系列之(二):Redis主从同步,读写分离(转)
  11. ZOJ 2675 Little Mammoth(计算几何)
  12. 备注: ubt 16.04 安装 gtx 1060 --- 成功运行 tensorflow - gpu
  13. Linux haproxy配置参数
  14. 在CentOS下面安装hue时报的错
  15. 数据结构--图 的JAVA实现(下)
  16. 【Java】【控制流程】
  17. rocketmq 学习记录-2
  18. 第三百四十节,Python分布式爬虫打造搜索引擎Scrapy精讲—css选择器
  19. Java中创建线程的三种方法以及区别
  20. Java 基础【13】 I/O流概念分析整理

热门文章

  1. webpack.config.js====插件purifycss-webpack,提炼css文件
  2. 关于Kettle的事务和转换内步骤的顺序执行
  3. check设置默认值但刷新后就会清空
  4. event——事件对象详解
  5. Electron 入门文档
  6. 转载《五大免费采集器哪个好,火车头,海纳,ET,三人行,狂人采集 》
  7. cluvfy stage命令用法
  8. IntelliJ IDEA java设置程序运行时内存
  9. SQLSTATE=42000 #42000
  10. web.xml 中 resource-ref 的注意事项