Pagini recente » Cod sursa (job #2335975) | Cod sursa (job #2135709) | Cod sursa (job #3267631) | Cod sursa (job #491635) | Cod sursa (job #1608414)
#include <fstream>
using namespace std;
ifstream fin("datorii.in");
ofstream fout("datorii.out");
int n,M,aib[15005];
void Update(int p, int x)
{
while(p <= n)
{
aib[p]+=x;
p += (p&(-p));
}
}
int Query(int p)
{
int s = 0;
while(p > 0)
{
s+=aib[p];
p -= (p&(-p));
}
return s;
}
int main()
{
int i,x,op,t,v;
fin>>n>>M;
for(i = 1; i <= n; i++)
{
fin>>x;
Update(i,x);
}
while(M--)
{
fin>>op>>t>>v;
if(op==0) Update(t,-v);
else fout<<(Query(v)-Query(t-1))<<"\n";
}
fout.close();
return 0;
}