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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

2018.09.30 bzoj2288:生日礼物(贪心+线段树)

發(fā)布時(shí)間:2023/12/18 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 2018.09.30 bzoj2288:生日礼物(贪心+线段树) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

傳送門
線段樹經(jīng)典題目。


每次先找到最大子段和來更新答案,然后利用網(wǎng)絡(luò)流反悔退流的思想把這個(gè)最大字段乘-1之后放回去。
代碼:

#include<bits/stdc++.h> #define N 100005 #define lc (p<<1) #define rc (p<<1|1) #define mid (T[p].l+T[p].r>>1) using namespace std; inline int read(){int ans=0,w=1;char ch=getchar();while(!isdigit(ch)){if(ch=='-')w=-1;ch=getchar();}while(isdigit(ch))ans=(ans<<3)+(ans<<1)+(ch^48),ch=getchar();return ans*w; } int n,m,a[N],ans=0; struct node{int l,r,lmx,rmx,mmx,sum,lmn,rmn,mmn,lmxp,lmnp,rmxp,rmnp,mxl,mxr,mnl,mnr,tag;}T[N<<2]; inline int max(int a,int b){return a>b?a:b;} inline int min(int a,int b){return a<b?a:b;} inline node operator+(node a,node b){node ret;ret.sum=a.sum+b.sum,ret.l=a.l,ret.r=b.r;if(a.lmx>a.sum+b.lmx)ret.lmx=a.lmx,ret.lmxp=a.lmxp;else ret.lmx=a.sum+b.lmx,ret.lmxp=b.lmxp;if(a.lmn<a.sum+b.lmn)ret.lmn=a.lmn,ret.lmnp=a.lmnp;else ret.lmn=a.sum+b.lmn,ret.lmnp=b.lmnp;if(b.rmx>b.sum+a.rmx)ret.rmx=b.rmx,ret.rmxp=b.rmxp;else ret.rmx=b.sum+a.rmx,ret.rmxp=a.rmxp;if(b.rmn<b.sum+a.rmn)ret.rmn=b.rmn,ret.rmnp=b.rmnp;else ret.rmn=b.sum+a.rmn,ret.rmnp=a.rmnp;ret.mmx=a.mmx,ret.mxl=a.mxl,ret.mxr=a.mxr;if(a.rmx+b.lmx>ret.mmx)ret.mmx=a.rmx+b.lmx,ret.mxl=a.rmxp,ret.mxr=b.lmxp;if(b.mmx>ret.mmx)ret.mmx=b.mmx,ret.mxl=b.mxl,ret.mxr=b.mxr;ret.mmn=a.mmn,ret.mnl=a.mnl,ret.mnr=a.mnr;if(a.rmn+b.lmn<ret.mmn)ret.mmn=a.rmn+b.lmn,ret.mnl=a.rmnp,ret.mnr=b.lmnp;if(b.mmn<ret.mmn)ret.mmn=b.mmn,ret.mnl=b.mnl,ret.mnr=b.mnr;return ret; } inline void pushnow(int p){T[p].tag^=1,T[p].sum*=-1;T[p].lmx*=-1,T[p].rmx*=-1,T[p].lmn*=-1,T[p].rmn*=-1,T[p].mmx*=-1,T[p].mmn*=-1;swap(T[p].lmx,T[p].lmn),swap(T[p].rmx,T[p].rmn),swap(T[p].mmx,T[p].mmn);swap(T[p].lmxp,T[p].lmnp),swap(T[p].rmxp,T[p].rmnp);swap(T[p].mxl,T[p].mnl),swap(T[p].mxr,T[p].mnr); } inline void pushdown(int p){if(T[p].tag)T[p].tag^=1,pushnow(lc),pushnow(rc);} inline void build(int p,int l,int r){T[p].l=l,T[p].r=r,T[p].tag=0;if(l==r){T[p].sum=T[p].lmx=T[p].lmn=T[p].rmx=T[p].rmn=T[p].mmx=T[p].mmn=a[l];T[p].lmxp=T[p].rmxp=T[p].lmnp=T[p].rmnp=T[p].mxl=T[p].mxr=T[p].mnl=T[p].mnr=l;return;}build(lc,l,mid),build(rc,mid+1,r),T[p]=T[lc]+T[rc],T[p].tag=0; } inline void update(int p,int ql,int qr){if(T[p].l>qr||T[p].r<ql)return;if(ql<=T[p].l&&T[p].r<=qr)return pushnow(p);pushdown(p);if(qr<=mid)update(lc,ql,qr);else if(ql>mid)update(rc,ql,qr);else update(lc,ql,mid),update(rc,mid+1,qr);int tmp=T[p].tag;T[p]=T[lc]+T[rc],T[p].tag=tmp; } int main(){n=read(),m=read();for(int i=1;i<=n;++i)a[i]=read();build(1,1,n);for(int i=1;i<=m;++i){if(T[1].mmx<0){printf("%d",ans);return 0;}ans+=T[1].mmx,update(1,T[1].mxl,T[1].mxr);}printf("%d",ans);return 0; }

轉(zhuǎn)載于:https://www.cnblogs.com/ldxcaicai/p/9738173.html

總結(jié)

以上是生活随笔為你收集整理的2018.09.30 bzoj2288:生日礼物(贪心+线段树)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 国精品人妻无码一区二区三区喝尿 | 日本美女黄色一级片 | 天天av网 | 日韩中文一区二区三区 | 少妇伦子伦精品无吗 | 一区二区视频网站 | 久久网亚洲 | 91免费国产视频 | 国产特黄大片aaaa毛片 | 成人综合一区 | 午夜性刺激免费视频 | 九九热视频在线 | 日日操av| 不卡中文 | 在线色导航 | 中文字幕在线视频日韩 | www.国产| 欧美在线一| 伊人一区二区三区 | 青青草小视频 | 人妻无码一区二区三区 | 中文天堂在线资源 | 天天插天天干 | 亚洲综合网址 | 被两个男人吃奶三p爽文 | 国产69精品久久久久777 | 在线播放成人av | 69堂精品 | 我们好看的2018视频在线观看 | 日韩在线播放视频 | 91在线免费播放 | 亚洲一区中文字幕永久在线 | 国产精品第一国产精品 | 久久精品亚洲 | 国产欧美一区二区三区视频 | 99热国产在线观看 | 黄片毛片av | 亚洲av无码国产在丝袜线观看 | 亚洲精品h | 玖玖精品 | 精品国语对白 | 亚洲一区二区中文字幕 | 亚洲xxx视频| 99热6这里只有精品 三级av在线免费观看 | 好吊视频在线观看 | 日韩1区2区3区 | 久久久久亚洲av成人网人人网站 | 久久精品三级视频 | 在线看欧美 | 中文不卡视频 | 成人午夜福利视频 | 美女又爽又黄免费 | 亚洲大片精品 | 麻豆av网站 | 久久久久亚洲精品中文字幕 | 宅男午夜影院 | 嫩草视频在线观看 | 黄色另类小说 | 成人免费视频一区二区三区 | 久久不卡av | 亚洲精选在线观看 | 欧美日韩不卡一区二区三区 | 最好看的电影2019中文字幕 | 国产一区导航 | a级大片在线观看 | 日韩一区二区三区电影 | 超清纯大学生白嫩啪啪 | 午夜精品久久久久久久久久蜜桃 | 一二区视频 | 欧美在线观看网站 | 想要视频在线观看 | 影音av资源 | 久久国产毛片 | 午夜av成人 | 一区二区三区免费网站 | 蜜桃精品视频在线观看 | 九九视频精品在线 | 国产成人精品白浆久久69 | 天天鲁| 亚洲成人第一区 | 日b影院 | 91精品婷婷国产综合久久 | 国产亚洲欧美在线精品 | 日韩在线高清视频 | 日本黄色免费网址 | 日本男人天堂网 | 男人综合网 | 在线观看亚洲区 | 人妻天天爽夜夜爽一区二区三区 | 亚洲欧美视频在线观看 | 麻豆av免费| 日本视频在线观看 | 色哟哟免费 | 国产高清av在线 | 亚洲一区人妻 | av片免费播放 | 免费午夜视频 | 欧美一区影院 | 中文字幕精品久久久 |