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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

BZOJ2002 [HNOI2010] 弹飞绵羊

發布時間:2025/3/20 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 BZOJ2002 [HNOI2010] 弹飞绵羊 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

LCT access完了一定splay再用!!!

悲傷= =

LCT裸題 把調出去設虛點n+1即可

//Love and Freedom. #include<cstdio> #include<cstring> #include<algorithm> #include<cmath> #define N 200010 #define ls(x) t[x].son[0] #define rs(x) t[x].son[1] #define fa(x) t[x].fa #define nroot(x) (ls(fa(x))==x||rs(fa(x))==x) using namespace std;struct node {int sz,fa,son[2]; bool rev; }t[N];void pushup(int x) {t[x].sz = t[ls(x)].sz + t[rs(x)].sz + 1; }void rotate(int x) {if(!x||!nroot(x)) return;int f = fa(x),gf = fa(f);int k = (rs(f) == x), p = k^1;if(nroot(f)) t[gf].son[rs(gf)==f] = x;t[x].fa = gf; t[f].fa = x;if(t[x].son[p]) t[t[x].son[p]].fa = f;t[f].son[k] = t[x].son[p];t[x].son[p] = f;pushup(f); pushup(x); }void pushdown(int x) {if(!x || !t[x].rev) return;swap(ls(x),rs(x));if(ls(x)) t[ls(x)].rev^=1;if(rs(x)) t[rs(x)].rev^=1;t[x].rev^=1; }void push(int x) {if(nroot(x)) push(fa(x));pushdown(x); }void splay(int x) {push(x);while(nroot(x)){int f = fa(x), gf = fa(f);if(nroot(gf))(rs(f)==x)^(rs(gf)==f)?rotate(x):rotate(f);rotate(x);}pushup(x); }void access(int x) {int y = 0;do{//printf("%d\n",x);splay(x);t[x].son[1] = y;pushup(x);y = x; x = t[x].fa;}while(x); }void makeroot(int x) {access(x); splay(x); t[x].rev=1;// pushdown(x); }void link(int x,int y) {makeroot(x); t[x].fa = y; }void cut(int x,int y) {makeroot(y); access(x); splay(x);//printf("%d %d\n",t[y].sz,rs(y));if(t[x].sz == 2 && ls(x) == y)t[x].son[0] = 0, t[y].fa = 0,pushup(x); } int k[N]; int main() {int n,x,y,opt,m;scanf("%d",&n);for(int i=1;i<=n+1;i++) t[i].sz=1;for(int i=1;i<=n;i++){scanf("%d",&k[i]);if(i+k[i]>n) link(i,n+1);else link(i,i+k[i]);}scanf("%d",&m);for(int i=1;i<=m;i++){scanf("%d%d",&opt,&x);//for(int j=1;j<=n+1;j++)// printf("%d ",t[j].fa);//printf("\n");x++;if(opt==1){makeroot(n+1);//printf("MMP\n");//for(int j=1;j<=n+1;j++)// printf("%d ",t[j].fa);access(x); splay(x);//printf("%d %d\n",ls(5),rs(5));printf("%d\n",t[x].sz-1);}else{scanf("%d",&y);cut(x,x+k[x]>n?n+1:x+k[x]);k[x] = y;link(x,x+k[x]>n?n+1:x+k[x]);}}return 0; }

?

轉載于:https://www.cnblogs.com/hanyuweining/p/10321865.html

總結

以上是生活随笔為你收集整理的BZOJ2002 [HNOI2010] 弹飞绵羊的全部內容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 国产破处视频 | 欧美一级免费视频 | 日韩免费av一区二区 | 国产粉嫩在线 | 国产午夜亚洲精品午夜鲁丝片 | 秋霞网一区二区三区 | 亚洲综合日韩精品欧美综合区 | 成人毛片在线播放 | 久久久久久久久久久久久久久久久久久 | 九九九九九伊人 | 国产av一区不卡 | 久久精品欧美一区 | 国产综合第一页 | 夜夜激情| 一区二区三区日本视频 | 国产欧美一区二区三区在线 | 91精品毛片 | 亚洲综合影视 | 97久久人人超碰caoprom欧美 | av一区三区| 久草福利资源站 | 久草久草 | 九草影院 | 捆绑无遮挡打光屁股调教女仆 | 极品超粉嫩尤物69xx | 污污的网站在线免费观看 | 国产一区不卡在线 | 国模二区| 国产精品久久久久久久久动漫 | 久久久久久久亚洲av无码 | 欧美亚洲免费 | 日韩av在线网 | 91精品国产福利在线观看 | 国产精品久久久av | 97精品在线 | 网站免费视频www | 日本在线天堂 | 久久国产精品亚洲 | 青青久久久 | 寻找身体恐怖电影免费播放 | 蜜桃一二三区 | 欧美顶级少妇做爰 | 亚洲人精品午夜射精日韩 | 天天舔天天摸 | 日本高清一区二区视频 | 又大又粗弄得我出好多水 | 打美女白嫩屁屁网站 | 天堂av免费看 | 成年人小视频在线观看 | 欧美黄色片网站 | av视屏在线 | 亚洲乱色熟女一区二区 | 久久艹这里只有精品 | 午夜羞羞影院 | 美女的胸给男人玩视频 | 欧美久久久久久又粗又大 | 日本加勒比一区 | 男人的天堂99 | 日本美女黄视频 | 久久极品视频 | 免费成年人视频 | jizz日本视频 | 色窝窝综合色窝窝久久 | 色欧美综合 | 欧美猛操| 国产肥熟 | 诱惑の诱惑筱田优在线播放 | 伊人22综合 | 小明天天看 | 天天狠天天操 | 亚洲精品久久久蜜桃 | 久草国产精品 | 青青插 | 熟女少妇精品一区二区 | 99久久精品日本一区二区免费 | 国产精品一区二区亚洲 | 国产农村妇女毛片精品久久麻豆 | 伊人激情综合 | 亚日韩欧美 | 日本h视频在线观看 | 日韩免费av网站 | 女人高潮被爽到呻吟在线观看 | 50度灰在线 | 99国产揄拍国产精品 | 久久久99精品国产一区二区三区 | 色91| 天天人人 | 欧美激情免费在线 | 日韩欧美一级 | 精品黄色av | 欧洲一二三区 | www.日日操 | 国产一级做a爰片在线看免费 | 欧美情爱视频 | 国产精品高潮呻吟AV无码 | 日韩黄色片免费看 | 欧美精品免费一区二区 | 精品国产一区二区三区久久久久久 | 黄色网址大全免费 |