标签:
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 5993 Accepted Submission(s): 2384
1 #include <iostream> 2 #include <cstdlib> 3 #include <cstdio> 4 #include <cmath> 5 #include <cstring> 6 7 using namespace std; 8 9 int n; 10 const int N=16000; 11 const int M=33000; 12 13 int a[M],c[N]; 14 15 int lowbit(int t) 16 { 17 return t&(-t); 18 } 19 20 void insert(int t,int d) 21 { 22 while (t<=M) 23 { 24 a[t]+=d; 25 t+=lowbit(t); 26 } 27 } 28 29 int getsum(int t) 30 { 31 int zs=0; 32 while (t>0) 33 { 34 zs+=a[t]; 35 t-=lowbit(t); 36 } 37 return zs; 38 } 39 40 int main() 41 { 42 int i,x,y,p,n; 43 while (scanf("%d",&n)!=EOF) 44 { 45 memset(a,0,sizeof(a)); 46 memset(c,0,sizeof(c)); 47 for (i=1;i<=n;i++) 48 49 { 50 scanf("%d%d",&x,&y); 51 insert(x+1,1); 52 p=getsum(x+1)-1; 53 c[p]++; 54 } 55 for (i=0;i<n;i++) printf("%d\n",c[i]); 56 } 57 return 0; 58 }
标签:
原文地址:http://www.cnblogs.com/shanyr/p/4694212.html