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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

【BZOJ3262】 陌上花开

發布時間:2025/4/16 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【BZOJ3262】 陌上花开 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Description

有n朵花,每朵花有三個屬性:花形(s)、顏色(c)、氣味(m),又三個整數表示。現要對每朵花評級,一朵花的級別是它擁有的美麗能超過的花的數量。定義一朵花A比另一朵花B要美麗,當且僅當Sa>=Sb,Ca>=Cb,Ma>=Mb。顯然,兩朵花可能有同樣的屬性。需要統計出評出每個等級的花的數量。

Input

第一行為N,K (1 <= N <= 100,000, 1 <= K <= 200,000 ), 分別表示花的數量和最大屬性值。 以下N行,每行三個整數si, ci, mi (1 <= si, ci, mi <= K),表示第i朵花的屬性

Output

包含N行,分別表示評級為0...N-1的每級花的數量。

Sample Input

10 3
3 3 3
2 3 3
2 3 1
3 1 1
3 1 2
1 3 1
1 1 2
1 2 2
1 3 2
1 2 1

Sample Output

3
1
3
0
1
0
1
0
0
1

HINT

?

1 <= N <= 100,000, 1 <= K <= 200,000

三維偏序集,黃學長告訴我們可以 1.樹狀數組+treap √ 2.cdq分治 目前只會樹套樹的做法,然而我的樹套樹真心很弱 1 #include<iostream> 2 #include<cstdio> 3 #include<cstdlib> 4 #include<algorithm> 5 #define M 5000005 6 using namespace std; 7 int n,m,sz,tmp; 8 int root[200005],ans[100005],sum[100005]; 9 int size[M],ls[M],rs[M],v[M],w[M],rnd[M]; 10 struct node{int a,b,c;}a[100005]; 11 int lowbit(int x){return x&(-x);} 12 bool cmp(node a,node b){ 13 if (a.a==b.a&&a.b==b.b) return (a.c<b.c); 14 if (a.a==b.a) return (a.b<b.b); 15 return (a.a<b.a); 16 } 17 void updata(int x){size[x]=size[ls[x]]+size[rs[x]]+w[k];} 18 void lturn(int &k){int t=rs[k];rs[k]=ls[t];ls[t]=k;updata(k);updata(t);k=t;} 19 void rturn(int &k){int t=ls[k];ls[k]=rs[t];rs[t]=k;updata(k);updata(t);k=t;} 20 void ins(int &k,int num){ 21 if (!k){sz++;k=sz;rnd[k]=rand();v[k]=num;size[k]=w[k]=1;return;} 22 size[k]++; 23 if (v[k]==num) {w[k]++;return;} 24 else if (v[k]>num){ins(ls[k],num);if (rnd[ls[k]]<rnd[k]) rturn(k);} 25 else {ins(rs[k],num);if (rnd[rs[k]]<rnd[k]) lturn(k);} 26 } 27 28 void getrank(int k,int num){ 29 if (!k) return; 30 int l=ls[k],r=rs[k]; 31 if (v[k]==num) {tmp+=size[l]+w[k];return;} 32 else if (v[k]>num) getrank(l,num); 33 else if (v[k]<num){tmp+=size[l]+w[k];getrank(r,num);} 34 } 35 36 void ask(int x,int num){ 37 for (int i=x;i;i-=lowbit(i)) 38 getrank(root[i],num); 39 } 40 41 void insert(int x,int num){ 42 for (int i=x;i<=m;i+=lowbit(i)) 43 ins(root[i],num); 44 } 45 46 int main(){ 47 scanf("%d%d",&n,&m); 48 for (int i=1;i<=n;i++) scanf("%d%d%d",&a[i].a,&a[i].b,&a[i].c); 49 sort(a+1,a+n+1,cmp); 50 for (int i=1;i<=n;i++){ 51 if (a[i].a==a[i+1].a&&a[i].b==a[i+1].b&&a[i].c==a[i+1].c&&i!=n) sum[i+1]=sum[i]+1; 52 else{ 53 tmp=0; 54 ask(a[i].b,a[i].c); 55 ans[tmp]+=sum[i]+1; 56 } 57 insert(a[i].b,a[i].c); 58 } 59 for (int i=0;i<n;i++)printf("%d\n",ans[i]); 60 }

?

轉載于:https://www.cnblogs.com/wuminyan/p/5146716.html

總結

以上是生活随笔為你收集整理的【BZOJ3262】 陌上花开的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 性色av一区二区三区四区 | 九九久久精品视频 | 香蕉视频一区 | 黄色一区二区视频 | 日日干夜 | 国产 日韩 欧美 综合 | 一区二区三区免费观看视频 | 99久热在线精品996热是什么 | 国产午夜在线观看 | 欧美日韩成人在线 | 欧美第一页在线 | 手机av在线免费观看 | 69久久精品无码一区二区 | 亚洲一区二区三区不卡视频 | 欧美亚洲一| 亚洲AV无码久久精品色三人行 | 成人黄色免费网址 | 日操干| 天天干 夜夜操 | 成人在线免费播放 | 欧美尹人 | 成人免费毛片aaaaaa片 | 韩国三级国产 | 蜜桃啪啪 | 男人日女人逼 | 国产一区精品在线观看 | 污片在线免费看 | 精国产品一区二区三区a片 国产精品第一 | 日本高清网色 | 精品视频一二 | 青草视频网 | 久久亚洲av成人无码国产电影 | 91视| 中文字幕爱爱 | 美女脱衣服一干二净 | 亚洲精品国产电影 | 成人免费视屏 | 日韩精品一区二区三 | 一区三区在线观看 | 中国无码人妻丰满熟妇啪啪软件 | 啪啪福利社 | 国产十八熟妇av成人一区 | 毛片毛片毛片毛片毛片毛片毛片毛片 | 国产黄在线观看 | 少妇av片 | 久久久久99人妻一区二区三区 | 6—12呦国产精品 | 翔田千里一区二区 | 小视频成人 | 91超碰在线播放 | 四虎最新网址在线观看 | 麻豆tv在线观看 | 日本高清网站 | 一区二区三区视频在线免费观看 | 91精品啪在线观看国产 | 国产白丝喷水 | 美女视频在线免费观看 | 日韩在线视频不卡 | 青娱乐国产在线视频 | 激情啪啪网站 | 日本一区免费视频 | 中出亚洲| 亚洲性生活网站 | 国产精品日| 黄色一级小说 | 大地资源高清播放在线观看 | 四虎国产精品永久免费观看视频 | 大吊av | 91久久久国产精品 | 一区二区三区四区高清视频 | 香港三级在线视频 | 成人av电影在线观看 | 中文字幕一区二区三区在线观看 | www.久久久久 | 亚洲视频精品在线观看 | 亚洲一级片网站 | 91久久中文字幕 | 中文字幕123 | 欧美一区二区三区色 | 久久综合丁香 | av毛片在线播放 | 午夜电影在线播放 | 免费观看黄色一级视频 | 一区二区三区色 | 亚洲熟妇丰满大屁股熟妇 | 操操综合| www.中文字幕av | 欧美日韩亚洲国产一区 | 97色爱| 欧美性猛交乱大交 | 超碰666| 性做久久久久久免费观看欧美 | 落日余晖 | 亚洲4438| 日韩欧美手机在线 | 中文字幕专区 | 不卡视频在线观看免费 | 麻豆国产精品一区 | 久久怡红院 |