/*
树状数组(Binary Index Tree)
*/
struct BIT
{
static const int N=1e5+5;
int t[N];
//查询前缀和
int query(int x){
int ans=0;
for(;x;x-=(x&-x)) ans+=t[x];
return ans;
}
//单点修改
void add(int x,int y){
for(;x<=N;x+=(x&-x)) t[x]+=y;
}
};