标签:des style blog io color os ar java for
3 1 1 2 2 3 3 3 1 1 1 2 1 3 0
1 1 1 3 2 1
/*树状数组应用。 */ #include<stdio.h> #include<string.h> int n,tree[100010]; int lowbit(int N) { return N&(-N); } int add(int i,int t)//求第i个数之后都加上t. { while(i<=n) { tree[i]+=t; i+=lowbit(i); } } int sum(int m) { int sum=0; while(m>0) { sum+=tree[m]; m-=lowbit(m); } return sum; } int main() { int i,a,b; while(scanf("%d",&n),n) { memset(tree,0,sizeof(tree)); for(i=0;i<n;i++) { scanf("%d %d",&a,&b); add(a,1); //将a之后的涂色次数加1. add(b+1,-1);//将b之后的涂色次数减1. } printf("%d",sum(1)); for(i=2;i<=n;i++) printf(" %d",sum(i)); printf("\n"); } return 0; }
标签:des style blog io color os ar java for
原文地址:http://blog.csdn.net/hdd871532887/article/details/40534835