题目链接:https://www.luogu.org/problemnew/show/P3374

留个坑,以后补上BIT的讲解,先留下板子复习用

 #include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
int n,m;
int tree[],a[];
int lowbit(int x)
{
return x&-x;
}
void add(int k,int num)//给k位置的数值加num
{
while(k<=n)
{
tree[k]+=num;
k+=lowbit(k);
}
}
int sum(int k)//前缀和
{
int s=;
while(k)
{
s+=tree[k];
k-=lowbit(k);
}
return s;
}
int main()
{
scanf("%d%d",&n,&m);
for(int i=;i<=n;i++)
{
scanf("%d",&a[i]);
add(i,a[i]);
}
for(int i=;i<=m;i++)
{
int c;scanf("%d",&c);
if(c == )
{
int x,k;
scanf("%d%d",&x,&k);
add(x,k);
}
else
{
int x,y;scanf("%d%d",&x,&y);
printf("%d\n",sum(y)-sum(x-));
}
}
return ;
}

最新文章

  1. 微信JSAPI支付
  2. Liferay 6.2 改造系列之十:修改系统登录相关配置
  3. [2015hdu多校联赛补题]hdu5324 Boring Class
  4. zabbix之3触发器/action及模板
  5. ActionBar-PullToRefreshLibs+沉浸式在部分手机上的布局错乱,目前知道的三星
  6. Android 通过HTTP GET请求互联网数据
  7. window忘记密码怎么办
  8. mybatis generator eclipse插件的安装
  9. eclipse 鲜为人知的调试技巧,你用过多少
  10. GDB调试工具入门
  11. XFS文件系统的备份和恢复
  12. 【C++】C++中变量的声明与定义的区别
  13. Mysql数据类型、约束、存储引擎
  14. Linux (RHEL)修改时区
  15. 数据库报错com.mysql.jdbc.MysqlDataTruncation: Data truncation: Data too long for column &#39;ua&#39; at row 1
  16. Android------实现图片双击放大,缩小,左右滑动的多种方式
  17. 秒懂String,StringBuilder与StringBuffer
  18. 【CSS】布局之选项卡与图片库
  19. Netty Client 重连实现
  20. git线上线下冲突

热门文章

  1. 【CAD】自定义实体的步骤(转)
  2. 全文检索~solr的使用
  3. TOJ 2926 Series
  4. 6个Unity 开源项目分享!
  5. Nmap原理02 - 编写自己的服务探测脚本
  6. s-2、charles 入门
  7. log4j 2整理
  8. Eclipse error: “The import XXX cannot be resolved”
  9. 整理代码,将一些曾经用过的功能整合进一个spring-boot
  10. SpringMVC:系统认识一下maven