44424742 发表于 2013-1-26 13:38:09

poj2352——Stars//树状数组

精巧的树状数组:
#include<algorithm>#include<iostream>#include<cstdio>using namespace std;int c;int out;int N=32001;int lowbit(int x){return x&(x^(x-1));}void Modify(int i,int x){while(i<=N){c+=x;i+=lowbit(i);}}int sum(int n){int sum=0;while(n>0){sum+=c;n-=lowbit(n);}return sum;}int main(){int n;scanf("%d",&n);int i,x,y;for(i=1;i<=n;i++){scanf("%d%d",&x,&y);x+=1;Modify(x,1);out++;}for(i=0;i<n;i++)printf("%d\n",out);return 0;}
页: [1]
查看完整版本: poj2352——Stars//树状数组