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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

hdu5489 Removed Interval dp+线段树优化

發布時間:2023/12/13 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 hdu5489 Removed Interval dp+线段树优化 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

現在看這題居然直接秒了。。。去年看的時候還以為神題。。

設以第i項為結尾的lis前綴為f[i],以第j項為結尾的lis后綴為g[i],如果求出f[i]和g[j],然后枚舉i,快速找到最大的滿足a[j]>a[i]的g[j]就可以了。注意到如果將f[i]從后往前枚舉,那么只要添加g[j]而不用刪除操作了,因此枚舉f[i],在線段樹中找(a[i]+1,Xn]中g的最大值就可以了,ans=f[i]+max(g[j]) (a[j]>a[i]且j>i+L),然后順勢把g[j]插入線段樹。

求f[i]也是dp+線段樹優化,f[i]=max(f[j])+1 (a[j]<a[i])。

#include<iostream> #include<cstdio> #include<cstring> #include<cstdlib> #include<algorithm> #define REP(i,a,b) for(int i=a;i<=b;i++) #define MS0(a) memset(a,0,sizeof(a)) #define key_val ch[ch[rt[i]][1]][0] #define lson l,m,rt<<1 #define rson m+1,r,rt<<1|1using namespace std;typedef long long ll; const int maxn=1000100; const int INF=1e9+10;int n,L; int a[maxn],X[maxn],Xn; int f[maxn],g[maxn]; int Max[maxn<<2];void push_up(int rt) {Max[rt]=max(Max[rt<<1],Max[rt<<1|1]); }void build(int l,int r,int rt) {if(l==r){Max[rt]=0;return;}int m=(l+r)>>1;build(lson);build(rson);push_up(rt); }void update(int p,int c,int l,int r,int rt) {if(l==r){Max[rt]=max(Max[rt],c);return;}int m=(l+r)>>1;if(p<=m) update(p,c,lson);else update(p,c,rson);push_up(rt); }int query(int L,int R,int l,int r,int rt) {if(L>R) return 0;if(L<=l&&r<=R) return Max[rt];int m=(l+r)>>1;int res=0;if(L<=m) res=max(res,query(L,R,lson));if(R>m) res=max(res,query(L,R,rson));return res; }int main() {#ifndef ONLINE_JUDGEfreopen("in.txt","r",stdin);#endifint T;cin>>T;REP(casen,1,T){scanf("%d%d",&n,&L);REP(i,1,n) scanf("%d",&a[i]),X[i]=a[i];sort(X+1,X+n+1);Xn=unique(X+1,X+n+1)-(X+1);REP(i,1,n) a[i]=lower_bound(X+1,X+Xn+1,a[i])-X;build(1,Xn,1);f[0]=0;REP(i,1,n) f[i]=query(1,a[i]-1,1,Xn,1)+1,update(a[i],f[i],1,Xn,1);build(1,Xn,1);int ans=0,tmp=0;for(int i=n;i>=1;i--){int j=i-L;if(j>=0){tmp=f[j]+query(a[j]+1,Xn,1,Xn,1);ans=max(ans,tmp);}g[i]=query(a[i]+1,Xn,1,Xn,1)+1;update(a[i],g[i],1,Xn,1);}printf("Case #%d: %d\n",casen,ans);}return 0; } View Code

?

轉載于:https://www.cnblogs.com/--560/p/5211163.html

總結

以上是生活随笔為你收集整理的hdu5489 Removed Interval dp+线段树优化的全部內容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 欧美粗暴jizz性欧美20 | 精品久久成人 | 激情久久久久久 | 欧美日本在线视频 | 日韩在线一区视频 | 亚洲最大av | 中文字幕av影院 | 日韩中文字幕视频在线 | 国产精品三区在线观看 | 天天舔天天射天天干 | 羞羞在线观看 | 日本精品一区二区三区视频 | 日日碰狠狠添天天爽 | 国产免费无码一区二区 | 国产亚洲精品久久久久婷婷瑜伽 | 国产欧美在线精品日韩 | 91视频黄色 | 中文字幕成人在线视频 | 操的网站| wwwxxxx欧美 | 四虎国产视频 | 日本我不卡 | 亚洲AV永久无码国产精品国产 | 在线涩涩 | 中文字幕第80页 | 午夜天堂网 | 黄色一级片免费在线观看 | 原来神马电影免费高清完整版动漫 | av网址网站 | av一区在线播放 | 亚洲 国产 欧美 日韩 | 日韩一区二区三免费高清在线观看 | 日韩激情视频 | xxxxx亚洲| 国产高清一区二区三区四区 | 99re视频在线| 不卡的在线视频 | 影视av | 久久久久国产一区二区三区 | 天堂资源地址在线 | av簧片| 亚洲综合资源 | 无码内射中文字幕岛国片 | 国产精品一区二区性色av | 国产精品嫩草影院桃色 | 中文区中文字幕免费看 | 亚洲精品久久久久av无码 | 噼里啪啦免费高清看 | 日韩天堂| 91婷婷在线 | 级毛片内射视频 | 新香蕉视频| 国产精品美女久久久久久久久 | 日韩有色 | 黑鬼大战白妞高潮喷白浆 | 国产精品久久久久久久久岛 | 亚洲欧美日韩久久 | 欧美一区二区最爽乱淫视频免费看 | 亚洲 成人 av | 久久久久久久国产 | 午夜精品久久久久久久久久久久 | 91av短视频| 天天插日日干 | 亚洲第一页在线观看 | 精品毛片一区二区三区 | 寂寞人妻瑜伽被教练日 | xvideos成人免费视频 | 一级黄色片网址 | 日韩av资源在线观看 | 人乳videos巨大吃奶 | av大片免费看 | 欧美久久一级 | 强公把我次次高潮hd | 狠狠鲁影院 | 精品无码国产污污污免费网站 | 免费在线观看高清影视网站 | 久草成人 | 99九九精品视频 | 免费黄色一区二区 | 免费吸乳羞羞网站视频 | 超碰在线国产97 | 激情av综合 | 国产日韩二区 | 可以直接看的毛片 | ww欧美| 欧美高清69hd | 久久国语 | 国产精品久久午夜夜伦鲁鲁 | 天堂男人在线 | wwww在线观看 | 欧美精品免费在线观看 | 国产一级二级三级在线观看 | 久久免费黄色网址 | 一区二区三区免费看视频 | 色婷婷中文字幕 | 51妺嘿嘿午夜福利 | 女人久久久久 | 人妻互换 综合 | 国产无遮挡又黄又爽又色视频 |