poj 2352 Star

来源:互联网 发布:mac 触摸板 鼠标 消失 编辑:程序博客网 时间:2024/06/06 00:57

树状数组第一题。磕磕碰碰,照写人家的代码,和配合大牛博文的解析,终于差不多全理解的数组数组到底怎么一回事情了。

据说,树状数组的题目,都可以那线段树来写,以后也那线段树来写一下这个题目。

#include<stdio.h>#include<string.h>#include<iostream>#include<algorithm>using namespace std;#define N 32020int lev[N];int c[N];            //树状数组int Lowbit(int x){    return x&(-x);}void Updata(int x){    while(x<N)      //更新,进行从叶子节点,沿着所在的路径一种更新到更节点    {               //时间的复杂度为log(n)        c[x]++;        x+=Lowbit(x);    }}int Gsum(int x){    int sum=0;    while(x>0)    {        sum+=c[x];         //求前面star的个数 时间复杂度为log(n)        x-=Lowbit(x);      //求得前面一颗子树根的下标    }    return sum;}int main(){    int n,i,x,y;    while(scanf("%d",&n)!=EOF)    {        memset(lev,0,sizeof(lev));        memset(c,0,sizeof(c));        for(int i=0;i<n;i++)        {            scanf("%d%d",&x,&y);            x++;            lev[Gsum(x)]++;            Updata(x);        }        for(int i=0;i<n;i++)        {            printf("%d\n",lev[i]);        }    }    return 0;}


原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 先锋影音ios没了怎么办 砚台里墨汁干了怎么办 浮石打错了想换怎么办 全蛋打发不起来怎么办 裱花剩下的奶油怎么办 打过头的淡奶油怎么办 淡奶油发过了怎么办 打好的蛋清有水怎么办 想戒烟却坚持不了怎么办 给淮山弄的很痒怎么办 淮山接触皮肤痒怎么办 洗山药后手很痒怎么办 公司老板跑路了怎么办 小工厂老板跑路怎么办 学生医保卡丢了怎么办 在私企年龄大了怎么办 百度网盘上传慢怎么办 百度云盘上传慢怎么办 手机qq打字闪退怎么办 苹果5s手机闪退怎么办 手机qq总是闪退怎么办 qq邮箱密码忘了怎么办 qq加不了群怎么办视频 孩子好几天不大便怎么办 宝宝7天没有大便怎么办 40天小孩不拉屎怎么办 40多天婴儿便秘怎么办 小孩拉绿色稀便怎么办 5岁好几天不拉屎怎么办 2个月宝宝不大便怎么办 两月宝宝不拉屎怎么办 好几天没大便了怎么办 初生婴儿便秘解不出大便怎么办 小孩大便拉不出来怎么办 新生儿3天没大便怎么办 新生儿5天没大便怎么办 小孩好几天不大便怎么办 婴儿10天不拉屎怎么办 3岁大便拉不出来怎么办 孩子大便拉不出来怎么办 4岁大便拉不出来怎么办