#include <stdio.h> #include <cstring> int c[32001]; int s[15001]; inline int lowbit(int x) { return x&(-x); } void update(int p,int d) { for(int i=p; i<=32001; i+=lowbit(i)) c[i]+=d; } int sum(int x) { int ans=0; for(int i=x; i>0; i-=lowbit(i)) ans+=c[i]; return ans; } int main() { int n,a,b; while(scanf("%d",&n)==1) { memset(s,0,sizeof(s)); memset(c,0,sizeof(c)); for(int i=0; i<n; i++) { scanf("%d%d",&a,&b); update(a+1,1); s[sum(a+1)]++; } for(int i=1;i<=n;i++) printf("%d\n",s[i]); } return 0; }
POJ Stars 2352
最新推荐文章于 2022-12-19 23:34:15 发布