#include<bits/stdc++.h>
using namespace std;
#define SET(a) memset(a,-1,sizeof(a))
#define CLR(a) memset(a,0,sizeof(a))
#define PI acos(-1.0)
#define MOD 1000000007
#define MX 200010
int tree[MX];
void update(int x, int val)
{
while(x<=200000)
{
tree[x]+=val;
x+=(x & -x);
}
return;
}
int read(int x)
{
int val=0;
while(x)
{
val+=tree[x];
x-=x & -x;
}
return val;
}
int main()
{
ios_base::sync_with_stdio(0);cin.tie(0);
int tc, kk=1, n, x, y;
string s;
char ch;
while(cin>>n && n)
{
CLR(tree);
for(int i=1;i<=n;i++)
{
cin>>x;
update(i, x);
}
if(kk>1) cout<<"\n";
cout<<"Case "<<kk++<<":\n";
while(cin>>s && s!="END")
{
cin>>x>>y;
if(s=="S") update(x, y-read(x)+read(x-1));
else cout<<read(y)-read(x-1)<<"\n";
}
}
return 0;
}
No comments:
Post a Comment