POJ 2352 树状数组

原创 2016年08月29日 19:52:44

这个树状数组写起来就轻松多了。因为这个点的输入的要求比较特殊,刚好都已经构成了写树状数组的要求,实际上只需要把数据直接进行树状数组的add和sum操作即可。可以模拟很轻松得到逻辑的答案,唯一要注意的就是这些点坐标是从0开始的,处理一下就好了。

#include<cstdio>
#include<cstring>
#include<algorithm>

using namespace std;

const int maxn=32010;
int n,c[maxn],maxs;
struct Node
{
    int x,y;
}p[maxn];

int lowbit(int x)
{
    return x&(-x);
}

void add(int x,int d)
{
    while(x<=maxn)
    {
        c[x]+=d;x+=lowbit(x);
    }
}

int sum(int x)
{
    int ret=0;
    while(x>0)
    {
        ret+=c[x];
        x-=lowbit(x);
    }
    return ret;
}

int main()
{
     while(scanf("%d",&n)!=EOF)
      {
        maxs=-1;
          for(int i=1;i<=n;i++)
          {
              scanf("%d%d",&p[i].x,&p[i].y);
              p[i].x++;
          }
          int ans[maxn]={0};
           for(int i=1;i<=n;i++)
           {
               add(p[i].x,1);
               ans[sum(p[i].x)-1]++;
           }
           for(int i=0;i<=n-1;i++)
            printf("%d\n",ans[i]);
      }
    return 0;
}


版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

poj 2352 Stars(树状数组)

StarsDescriptionAstronomers often examine star maps where stars are represented by points on a plane...

poj 2352(树状数组)

Stars Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u SubmitStatus D...

POJ - 2352 Stars解题报告(树状数组求二维区域和)

题目大意:给你一个二维的坐标系(32000*32000),里面有n(15000)个点,告诉你每个点的坐标(各个点各不相同)。定义:(x0,y0)(x_0,y_0)的左下角区域为:{(x,y)(x,y)...

POJ 2352 Star Treap||树状数组

发现这道题目用Treap居然可以做。。好吧,我从来没有想过,但是稍微思考一下发现这样也确实是有可行性,用Treap写完以后发现,用了500ms+,于是想看看用树状数组写要用多久,树状数组用了接近400...

树状数组简单题(POJ2352,HDU1541)

POJ2352,HDU1541 Stars 给出N个点的X,Y坐标(按照Y升序,X升序的顺序给出),对于每个点输出有多少个点在该点的左下方。如图中的点5就有3个(1,2,4)点在它的左下方。...

POJ 2352 star (树状数组)

Language: Default Stars Time Limit: 1000MS   Memory Limit: 65536K Total Submissi...

POJ - 2352 - Stars (树状数组!!)

Stars Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 34244   Accepte...

poj 2352 树状数组

// poj 2352 树状数组.cpp : 定义控制台应用程序的入口点。 // //题目要求每个星星左下方的星星个数,输入时星星坐标已经按照y轴升序排,并且y轴一样时按x轴升序排 //所以可以用x轴...

POJ 2352 树状数组

这是一道YY题= =... 确实.. 做这题我就是YY出来的。一交没想到1Y了~ 哈哈哈~ 笑死我了~ 树状数组再练一道就罢手! #include #include #include using...

POJ2352 Stars 【树状数组】or【线段树】

Stars Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 31172   Accepte...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:POJ 2352 树状数组
举报原因:
原因补充:

(最多只允许输入30个字)