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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

jzoj6342-[NOIP2019模拟2019.9.7]Tiny Counting【树状数组,容斥】

發(fā)布時間:2023/12/3 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 jzoj6342-[NOIP2019模拟2019.9.7]Tiny Counting【树状数组,容斥】 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

正題


題目大意

一個序列SSS,求有多少個互不相同的4元組(a,b,c,d)(a,b,c,d)(a,b,c,d)使得a&lt;b且Sa&lt;Sba&lt;b且S_a&lt;S_ba<bSa?<Sb?
c&lt;b且Sc&gt;Sdc&lt;b且S_c&gt;S_dc<bSc?>Sd?


解題思路

若可以重復(fù)其實答案就是逆序?qū)€數(shù)乘上正序?qū)€數(shù)。

然后我們考慮將重復(fù)的去掉
這里定義up1,down1up_1,down_1up1?,down1?為左邊大于/小于該數(shù)的個數(shù),up2,down2up2,down2up2,down2為右邊大于/小于該數(shù)的個數(shù)。
a=ca=ca=c,那么有Sd&lt;Sa=c&lt;SbS_d&lt;S_{a=c}&lt;S_bSd?<Sa=c?<Sb?,且(a=c)&lt;b,d(a=c)&lt; b,d(a=c)<b,d,為up2?down2up2*down2up2?down2
a=da=da=d,那么有Sc&gt;Sa=d&lt;SbS_c&gt;S_{a=d}&lt;S_bSc?>Sa=d?<Sb?,且c&lt;(a=d)&lt;bc&lt;(a=d)&lt;bc<(a=d)<b,為up1?up2up1*up2up1?up2
b=cb=cb=c,那么有Sa&lt;Sb=c&gt;SdS_a&lt;S_{b=c}&gt;S_dSa?<Sb=c?>Sd?,且a&lt;(b=d)&lt;da&lt;(b=d)&lt;da<(b=d)<d,為down1?down2down1*down2down1?down2
b=db=db=d,那么有Sa&lt;Sb=d&lt;ScS_a&lt;S_{b=d}&lt;S_cSa?<Sb=d?<Sc?,且a,c&lt;(b=d)a,c&lt;(b=d)a,c<(b=d),為up1?down1up1*down1up1?down1


codecodecode

#include<cstdio> #include<cstring> #include<algorithm> #define lowbit(x) (x&-x) #define ll long long using namespace std; const ll N=1e5+100; ll n,a[N],c[N],s1,s2,z,m; struct Tree_array{ll t[N];void Clear(){memset(t,0,sizeof(t));}void Change(ll x,ll z){while(x<=m){t[x]+=z;x+=lowbit(x);}}ll Ask(ll x){ll ans=0;while(x){ans+=t[x];x-=lowbit(x);} return ans;} }T1,T2; int main() {freopen("a.in","r",stdin);freopen("a.out","w",stdout);scanf("%lld",&n);for(ll i=1;i<=n;i++)scanf("%lld",&a[i]),c[i]=a[i];sort(c+1,c+1+n);m=unique(c+1,c+1+n)-c-1;for(ll i=1;i<=n;i++){a[i]=lower_bound(c+1,c+1+m,a[i])-c;T2.Change(a[i],1);}for(ll i=1;i<=n;i++){ll down1=T1.Ask(a[i]-1),up1=T1.Ask(m)-T1.Ask(a[i]);ll down2=T2.Ask(a[i]-1),up2=T2.Ask(m)-T2.Ask(a[i]);s1+=down1;s2+=down2;z+=up2*down2+up1*up2+down1*down2+up1*down1;T1.Change(a[i],1);T2.Change(a[i],-1);}printf("%lld",s1*s2-z); }

總結(jié)

以上是生活随笔為你收集整理的jzoj6342-[NOIP2019模拟2019.9.7]Tiny Counting【树状数组,容斥】的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 男人晚上看的视频 | 芒果视频在线观看免费 | 成人免费看片&#39; | 不卡视频一区 | 六月色婷婷| 国产主播福利在线 | 国产一区二区三区观看 | 亚洲天堂手机 | 18禁一区二区 | 欧美一区二区三区久久成人精品 | 中文字幕日产乱码中 | 国产精品一区二区6 | 成人av视屏 | 国产露脸91国语对白 | 日本wwwxxxx| 大桥未久视频在线观看 | 成人免费观看cn | 午夜精品一区 | 日本黄色免费视频 | 你懂的在线网站 | 国产伦精品一区二区三区视频痴汉 | av免费不卡 | 靠逼在线观看 | 中文字幕日韩专区 | 一区二区日韩视频 | 亚洲free性xxxx护士hd | 亚洲天堂久久久 | 91av视频网 | 西西444www无码大胆 | 国产亚洲成av人片在线观看桃 | 人妖干美女| 99草在线视频 | 欧美另类视频 | 国产精品亚洲一区二区 | 亚洲一区二区三区麻豆 | 亚洲一区视频网站 | 岛国成人在线 | 韩国禁欲系高级感电影 | 欧美鲁鲁 | 午夜色大片 | 欧美性生交大片免费看 | 精品国产亚洲av麻豆 | 成人做爰66片免费看网站 | 青青草原av在线 | 亚洲国产日韩av | 国产精品一区二区av日韩在线 | 色就色欧美| 密臀av一区二区 | 69式视频 | 色综合中文 | 4438全国最大成人网 | 日日拍夜夜拍 | 操碰在线观看 | 香蕉网av| 国产精品久久久久久福利 | 欧美巨乳在线观看 | 越南黄色一级片 | 国产一区二区三区视频在线观看 | 成人午夜视频在线免费观看 | 日本啪啪动态图 | 日韩一二区| 一区二区在线免费看 | 叼嘿视频在线免费观看 | 999国产精品视频 | 男女吻胸做爰摸下身 | 婷婷丁香激情 | www.奇米 | 91视频免费播放 | 青青网站| 精品久久久久久久久久久久久久久久久 | 国产激情福利 | 日本特级黄色大片 | 国产videos | 精品美女www爽爽爽视频 | 99re国产精品| 自拍1页 | 91成人免费在线观看视频 | 日本网站免费 | 亚洲最新中文字幕 | 啪啪五月天 | 三级不卡视频 | 乱色专区| 久久无码性爱视频 | 神马午夜51 | 欧美精品久久久久a | aaa在线 | 欧美黄页| 国产欧美一区二区精品久久久 | 麻豆网| 少妇熟女一区二区三区 | caoporen在线| 亚洲精品人 | 天天躁日日躁狠狠躁欧美 | 中文字幕在线观看网 | 美女脱光衣服让男人捅 | 国产一二三级 | 日本大奶少妇 | 在线免费看mv的网站入口 | 日韩a级大片 |