【Ural1028】【LOJ10114】【树状数组】数星星stars

传送门biu~

#include
using namespace std;
int a[32002],n,b[32002];
inline int ask(int x){
    int re=0;
    for(;x;x-=x&-x)re+=a[x];
    return re;
}
inline void add(int x,int y){
    for(;x<=32001;x+=x&-x)a[x]+=y;
}
int main(){
    int x,y;
    scanf("%d",&n);
    for(int i=1;i<=n;i++){
        scanf("%d%d",&x,&y);
        b[ask(x+1)]++;
        add(x+1,1);
    }
    for(int i=0;iprintf("%d\n",b[i]);
}

你可能感兴趣的:(树状数组)