poj 2352 Stars

来源:互联网 发布:迅雷看看 mac 编辑:程序博客网 时间:2024/05/18 22:42
/*看了别人的才会A的    第一个树状数组。。    慢慢熬吧。*/#include<iostream>#include<cstdio>#include<cstring>#define N 32010using namespace std;int cnt[N],lev[N];int n,x,y;int Lowbit(int i){    return i&(-i);}void Update(int x){    while(x<N)    {        cnt[x]++;        x+=Lowbit(x);    }}int Getsum(int x){    int sum=0;    while(x>0)    {        sum+=cnt[x];        x-=Lowbit(x);    }    return sum;}int main(){    //freopen("test.txt","r",stdin);    while(scanf("%d",&n)!=EOF)    {        memset(cnt,0,sizeof(cnt));        memset(lev,0,sizeof(lev));        for(int i=0;i<n;i++){        scanf("%d%d",&x,&y);        x+=1;        lev[Getsum(x)]++;        Update(x);        }        for(int i=0;i<n;i++)            printf("%d\n",lev[i]);    }}

原创粉丝点击