题目描述

给定一个长度为\(n(n \leq 100000)\),初始值都为\(0\)的序列,\(x(x \leq 10000)\)次的修改某些位置上的数字,每次加上一个数,然后提出\(y (y \leq 10000)\)个问题,求每段区间的和。时间限制\(1\)秒。

输入输出格式

输入格式:

第一行\(1\)个数,表示序列的长度\(n\)

第二行\(1\)个数,表示操作的次数\(w\)

后面依次是\(w\)行,分别表示加入和询问操作

其中,加入用\(x\)表示,询问用\(y\)表示

\(x\)的格式为"\(x\) \(a\) \(b\)" 表示在序列\(a\)的位置加上\(b\)

\(y\)的格式为"\(y\) \(a\) \(b\)" 表示询问\(a\)到\(b\)区间的加和

输出格式:

每行一个数,分别是每次询问的结果

输入输出样例

输入样例#1:

5
4
x 3 8
y 1 3
x 4 9
y 3 4

输出样例#1:

8
17

思路:一道(线段树&树状数组)的(单点修改&区间查询)的板子题,不用过多解释……

代码:

#include<cstdio>
#include<algorithm>
#define maxn 100007
#define lb(x) x&(-x)
using namespace std;
int n,m,a[maxn];
char s[2];
inline void add(int x, int w) {
while(x<=n) {
a[x]+=w;
x+=lb(x);
}
}
inline int csum(int x) {
int ans=0;
while(x) {
ans+=a[x];
x-=lb(x);
}
return ans;
}
int main() {
scanf("%d%d",&n,&m);
for(int i=1,l,r;i<=m;++i) {
scanf("%s%d%d",s,&l,&r);
if(s[0]=='x') add(l,r);
else printf("%d\n",csum(r)-csum(l-1));
}
return 0;
}

洛谷P2068 统计和的更多相关文章

  1. 洛谷——P2068 统计和

    P2068 统计和 题目描述 给定一个长度为n(n<=100000),初始值都为0的序列,x(x<=10000)次的修改某些位置上的数字,每次加上一个数,然后提出y (y<=1000 ...

  2. 洛谷 P2068 统计和

    题目描述 给定一个长度为n(n<=100000),初始值都为0的序列,x(x<=10000)次的修改某些位置上的数字,每次加上一个数,然后提出y (y<=10000)个问题,求每段区 ...

  3. 洛谷P2068 统计和题解

    题目描述 给定一个长度为n(n<=100000),初始值都为0的序列,x(x<=10000)次的修改某些位置上的数字,每次加上一个数,然后提出y (y<=10000)个问题,求每段区 ...

  4. AC日记——统计和 洛谷 P2068

    统计和 思路: 水题: 代码: #include <bits/stdc++.h> using namespace std; #define maxn 100005 int n,m,tree ...

  5. 洛谷1640 bzoj1854游戏 匈牙利就是又短又快

    bzoj炸了,靠离线版题目做了两道(过过样例什么的还是轻松的)但是交不了,正巧洛谷有个"大牛分站",就转回洛谷做题了 水题先行,一道傻逼匈牙利 其实本来的思路是搜索然后发现写出来类 ...

  6. 洛谷P1352 codevs1380 没有上司的舞会——S.B.S.

    没有上司的舞会  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 钻石 Diamond       题目描述 Description Ural大学有N个职员,编号为1~N.他们有 ...

  7. 洛谷P1108 低价购买[DP | LIS方案数]

    题目描述 “低价购买”这条建议是在奶牛股票市场取得成功的一半规则.要想被认为是伟大的投资者,你必须遵循以下的问题建议:“低价购买:再低价购买”.每次你购买一支股票,你必须用低于你上次购买它的价格购买它 ...

  8. 洛谷 P2701 [USACO5.3]巨大的牛棚Big Barn Label:二维数组前缀和 你够了 这次我用DP

    题目背景 (USACO 5.3.4) 题目描述 农夫约翰想要在他的正方形农场上建造一座正方形大牛棚.他讨厌在他的农场中砍树,想找一个能够让他在空旷无树的地方修建牛棚的地方.我们假定,他的农场划分成 N ...

  9. 洛谷P1710 地铁涨价

    P1710 地铁涨价 51通过 339提交 题目提供者洛谷OnlineJudge 标签O2优化云端评测2 难度提高+/省选- 提交  讨论  题解 最新讨论 求教:为什么只有40分 数组大小一定要开够 ...

随机推荐

  1. 08 - Django应用第五步

    1 自动测试 自动测试与测试的不同在于, 自动测试的测试工作是交给系统完成的 测试也有分类和级别, 有的用于一些细微的细节, 有的是针对整个软件整体 测试会保证一些看起来正常运行的功能在实际的多种情况 ...

  2. Struts2 - 通过 ActionContext 访问 Web 资源

    public String execute(){ //0. 获取 ActionContext 对象 //ActionContext 是 Action 的上下文对象. 可以从中获取到当往 Action ...

  3. Arc073_F Many Moves

    传送门 题目大意 有$n$个格子从左到右依次挨着,一开始有两枚棋子分布在$A,B$某一个或两个格子里,有$m$个操作,第$i$次操作要求你把其中一个棋子移到$X_i$上,移动一个棋子的代价是两个格子之 ...

  4. E比昨天更多的棒棒糖(Easy+Hrad)(华师网络赛)(DP||母函数||背包优化)

    Time limit per test: 2.0 seconds Memory limit: 512 megabytes 唐纳德先生的某女性朋友最近与唐纳德先生同居.该女性朋友携带一 baby.该 b ...

  5. Java基础 之 System.getProperty()方法

    Java基础 之 System.getProperty()方法大全 public static void main(String[] args) { System.out.println(" ...

  6. ACM学习历程—Rotate(HDU 2014 Anshan网赛)(几何)

    Problem Description Noting is more interesting than rotation! Your little sister likes to rotate thi ...

  7. 洛谷 P4547 & bzoj 5006 随机二分图 —— 状压DP+期望

    题目:https://www.luogu.org/problemnew/show/P4547 https://www.lydsy.com/JudgeOnline/problem.php?id=5006 ...

  8. debian上安装codeblocks

    1.查看linux的版本uname -a 2.在官网上下载稳定版的codeblocks(www.codeblocks.org) 3.解压codeblocks后,进入到文件夹中用root身份执行dpkg ...

  9. DDoS攻防战(二):CC攻击工具实现与防御理论--删除

    我们将要实现一个进行应用层DDoS攻击的工具,综合考虑,CC攻击方式是最佳选择,并用bash shell脚本来快速实现并验证这一工具,并在最后,讨论如何防御来自应用层的DDoS攻击. 第一步:获取大量 ...

  10. Code:目录

    ylbtech-Code:目录 1.返回顶部 1. https://github.com/   2.返回顶部 1. https://gitee.com 2. 3.返回顶部   4.返回顶部   5.返 ...