地址 https://www.acwing.com/problem/content/description/244/ 给定一个长度为N的数列A,以及M条指令,每条指令可能是以下两种之一: 1.“C l r d”,表示把 A[l],A[l+1],…,A[r] 都加上 d. 2.“Q l r”,表示询问 数列中第 l~r 个数的和. 对于每个询问,输出一个整数表示答案. 输入格式 第一行两个整数N,M. 第二行N个整数A[i]. 接下来M行表示M条指令,每条指令的格式如题目描述所示. 输出格式 对于…
传送门 题目描述 给定一个长度为N的数列A,以及M条指令,每条指令可能是以下两种之一: 1.“C l r d”,表示把 A[l],A[l+1],…,A[r] 都加上 d. 2.“Q l r”,表示询问 数列中第 l~r 个数的和. 对于每个询问,输出一个整数表示答案. 输入格式 第一行两个整数N,M. 第二行N个整数A[i]. 接下来M行表示M条指令,每条指令的格式如题目描述所示. 输出格式 对于每个询问,输出一个整数表示答案. 每个答案占一行. 数据范围 1≤N,M≤1051≤N,M≤105,…
题目:https://www.acwing.com/problem/content/244/ 题意:区间加,区间查询 思路:我们把原先那个差分数组分解一下 ∑i=1x∑j=1ib[j]=∑i=1x(x−i+1)×b[i]=(x+1)∑i=1xb[i]−∑i=1xi×b[i] #include <bits/stdc++.h> using namespace std; #define ll long long #define lowbit(x) x&(-x) const int N=2e5…
给定一个长度为N的数列A,以及M条指令,每条指令可能是以下两种之一: 1."C l r d",表示把 A[l],A[l+1],-,A[r] 都加上 d. 2."Q l r",表示询问 数列中第 l~r 个数的和. 对于每个询问,输出一个整数表示答案. #include<bits/stdc++.h> #define int long long using namespace std; const int N=1e5+5; int n,m,a[N],b[N]…
题意:区间更新,区间询问. 题解;对于区间更新,我们还是用差分数组\(b_i\)来更新,区间询问时,我们的答案是:\(\sum_{i=l}^{r}\sum_{j=1}^{i}b_j\), 所以,我们搞两个树状数组维护\(b_i\)和\(i*b_i\)即可. 代码: #define int long long int n,m; int a[N]; int c1[N],c2[N]; int lowbit(int x){ return x&(-x); } void updata1(int i,int…
给定长度为N的数列A,然后输入M行操作指令. 第一类指令形如"C l r d",表示把数列中第l~r个数都加d. 第二类指令形如"Q X",表示询问数列中第x个数的值. 对于每个询问,输出一个整数表示答案. #include<bits/stdc++.h> #define N 1000000 using namespace std; int a[N],b[N]; int n,m; void add(int x,int y){for(;x<=n;x+=…
给定长度为N的数列A,然后输入M行操作指令. 第一类指令形如“C l r d”,表示把数列中第l~r个数都加d. 第二类指令形如“Q X”,表示询问数列中第x个数的值. 对于每个询问,输出一个整数表示答案. 输入格式 第一行包含两个整数N和M. 第二行包含N个整数A[i]. 接下来M行表示M条指令,每条指令的格式如题目描述所示. 输出格式 对于每个询问,输出一个整数表示答案. 每个答案占一行. 数据范围 1≤N,M≤1051≤N,M≤105,|d|≤10000|d|≤10000,|A[i]|≤1…
题目地址:https://www.acwing.com/problem/content/244/ 题目描述: 给定一个长度为N的数列A,以及M条指令,每条指令可能是以下两种之一: 1.“C l r d”,表示把 A[l],A[l+1],…,A[r] 都加上 d. 2.“Q l r”,表示询问 数列中第 l~r 个数的和. 对于每个询问,输出一个整数表示答案. 输入格式 第一行两个整数N,M. 第二行N个整数A[i]. 接下来M行表示M条指令,每条指令的格式如题目描述所示. 输出格式 对于每个询问…
program SvrDemo; uses  Windows,  WinSvc,  winsock; const  RegName = 'SvrDemo'; var  szServiceName: pchar = 'SvrDemo';  szFileName:pchar;  ServiceTable: array [0..1] of TServiceTableEntry;  Status: SERVICE_STATUS;  StatusHandle: SERVICE_STATUS_HANDLE;…
#include <cstdio> #include <algorithm> #include <cstring> #include <cctype> using namespace std; template<class T>inline void read(T &num) { char ch; int flag=1; while(!isdigit(ch=getchar()))if(ch=='-')flag=-flag; for(num…