洛谷3374
Posted 宣毅鸣
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了洛谷3374相关的知识,希望对你有一定的参考价值。
树状数组模板题。。。
当然也可以用线段树做,不过线段树的常数较大,如果n再大一些卡常。。。
代码:
#include<bits/stdc++.h> using namespace std; typedef long long ll; const int N=500005; ll n,m,a[N],b[N],z,x,y; void inster(ll x,ll y) { for (;x<=n;x+=(x&-x))b[x]+=y; } ll js(ll x) { ll ans=0; for (;x;x-=(x&-x))ans+=b[x]; return ans; } int main() { scanf("%lld%lld",&n,&m); for (int i=1;i<=n;i++)scanf("%lld",&a[i]); for (int i=1;i<=n;i++)inster(i,a[i]); while (m--) { scanf("%lld%lld%lld",&z,&x,&y); if (z==1)inster(x,y); else printf("%lld\n",js(y)-js(x-1)); } }
以上是关于洛谷3374的主要内容,如果未能解决你的问题,请参考以下文章