日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

vijos 1066 树状数组

發(fā)布時間:2024/8/1 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 vijos 1066 树状数组 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

描述

永恒和mx正在玩一個即時戰(zhàn)略游戲,名字嘛~~恕本人記性不好,忘了-_-b。
mx在他的基地附近建立了n個戰(zhàn)壕,每個戰(zhàn)壕都是一個獨立的作戰(zhàn)單位,射程可以達到無限(“mx不贏定了?!?”永恒ftING…@_@)。
但是,戰(zhàn)壕有一個弱點,就是只能攻擊它的左下方,說白了就是橫縱坐標都不大于它的點(mx:“我的戰(zhàn)壕為什么這么菜”ToT)。這樣,永恒就可以從別的地方進攻摧毀戰(zhàn)壕,從而消滅mx的部隊。
戰(zhàn)壕都有一個保護范圍,同它的攻擊范圍一樣,它可以保護處在它左下方的戰(zhàn)壕。所有處于它保護范圍的戰(zhàn)壕都叫做它的保護對象。這樣,永恒就必須找到mx的戰(zhàn)壕中保護對象最多的點,從而優(yōu)先消滅它。
現(xiàn)在,由于永恒沒有時間來計算,所以拜托你來完成這個任務:
給出這n個戰(zhàn)壕的坐標xi、yi,要你求出保護對象個數(shù)為0,1,2……n-1的戰(zhàn)壕的個數(shù)。
格式

輸入格式

第一行,一個正整數(shù)n(1<=n<=15000)
接下來n行,每行兩個數(shù)xi,yi,代表第i個點的坐標
(1<=xi,yi<=32000)
注意:可能包含多重戰(zhàn)壕的情況(即有數(shù)個點在同一坐標)
輸出格式

輸出n行,分別代表保護對象為0,1,2……n-1的戰(zhàn)壕的個數(shù)。
樣例1

樣例輸入1

5
1 1
5 1
7 1
3 3
5 5
樣例輸出1

1
2
1
1
0
限制

各點2s(算是寬限吧^_^)
來源

URAL1028戰(zhàn)役版

分析:
日常跑排序跑一遍樹狀數(shù)組

Code

#include<iostream> #include<cstdio> #include<cmath> #include<cstring> #include<algorithm> #include<cstdlib> #include<queue> #define fo(i,a,b) for(int i=a;i<=b;i++) #define fod(i,a,b) for(int i=a;i>=b;i--) using namespace std; #define lowbit(x) x&(-x) #define M 32000 const int MAXN=32000+10,MAXM=15000+10; int tr[MAXN],n,ans[MAXM];struct Node{int x,y; }a[MAXM];bool cmp (const Node &a,const Node &b){if(a.x==b.x) return a.y<b.y;return a.x<b.x; }void add(int pos,int val){while(pos<=M){tr[pos]+=val;pos+=lowbit(pos);} }int sum(int pos){int tot=0;while(pos>0){tot+=tr[pos];pos-=lowbit(pos);}return tot; }int main(){scanf("%d",&n);memset(ans,0,sizeof(ans));memset(tr,0,sizeof(tr));fo(i,1,n) scanf("%d%d",&a[i].x,&a[i].y);sort(a+1,a+1+n,cmp);fo(i,1,n){int k=sum(a[i].y);ans[k]++;add(a[i].y,1);}fo(i,0,n-1) printf("%d\n",ans[i]);return 0; }

總結(jié)

以上是生活随笔為你收集整理的vijos 1066 树状数组的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。