当前位置: 首页 > news >正文

vue 做网站企业网络需求分析报告

vue 做网站,企业网络需求分析报告,包装设计公司浙江,公司网站做好了怎么做排名题目背景 这是一道经典的Splay模板题——文艺平衡树。 题目描述 您需要写一种数据结构#xff0c;来维护一个有序数列#xff0c;其中需要提供以下操作#xff1a;翻转一个区间#xff0c;例如原有序序列是5 4 3 2 1#xff0c;翻转区间是[2,4]的话#xff0c;结果是5 2 …题目背景 这是一道经典的Splay模板题——文艺平衡树。 题目描述 您需要写一种数据结构来维护一个有序数列其中需要提供以下操作翻转一个区间例如原有序序列是5 4 3 2 1翻转区间是[2,4]的话结果是5 2 3 4 1 输入输出格式 输入格式   第一行为n,m(n,m100000) n表示初始序列有n个数这个序列依次是(1,2, \cdots n-1,n)(1,2,⋯n−1,n) m表示翻转操作次数 接下来m行每行两个数 [l,r][l,r] 数据保证 1 \leq l \leq r \leq n1≤l≤r≤n   输出格式   输出一行n个数字表示原始序列经过m次变换后的结果 输入输出样例 输入样例 5 3 1 3 1 3 1 4 输出样例 4 3 2 1 5splay模板题维护该序列的中序遍历不变然后每次通过旋转节点使操作的区间变作一颗字树然后打上标记即可。什么是splay?一棵伸展树......什么是伸展树最近刚学我个人的理解大概就是一个能在不破坏二叉搜索树结构(即中序遍历始终为升序)的情况下通过旋转一个节点到他根节点位置使得操作区间恰好全部位于一棵子树内的方法。然后就打上标记之后在类似线段树一样的pushdown传递信息就好了。代码如下 #includealgorithm #includeiostream #includecstring #includecstdio #includecmath #define LL long long #define mod #define mid (RL1) #define M 2000010 using namespace std; LL read(){LL nm0,oe1;char cwgetchar();while(!isdigit(cw)) oecw-?-oe:oe,cwgetchar();while(isdigit(cw)) nmnm*10(cw-0),cwgetchar();return nm*oe; } LL n,m,l[M],r[M],tp[M],ad,sz[M],tg[M],ace,a,b,p,q,cnt; bool flagfalse; void pushdown(LL x){if(tg[x]0) return;tg[x]0,swap(l[x],r[x]);tg[l[x]]^1,tg[r[x]]^1; } void pushup(LL x){sz[x]sz[l[x]]sz[r[x]]1;} LL build(LL L,LL R,LL rt){if(LR) return 0;tp[mid]rt,sz[mid]1;if(LR) return L;l[mid]build(L,mid-1,mid);r[mid]build(mid1,R,mid);sz[mid]sz[l[mid]]sz[r[mid]];return mid; } void rotate(LL x){if(acex) return;LL toptp[x];pushdown(top),pushdown(x);if(topace) acex,tp[x]n1,tp[top]x;else{if(l[tp[top]]top) l[tp[top]]x;else r[tp[top]]x;tp[x]tp[top],tp[top]x;}if(l[top]x) l[top]r[x],tp[r[x]]top,r[x]top;else r[top]l[x],tp[l[x]]top,l[x]top;pushup(top),pushup(x); } void oper(LL x){if(xace||tp[x]ace){return;}LL toptp[x];pushdown(top);if(tp[top]ace) rotate(x);else if(l[l[tp[top]]]x||r[r[tp[top]]]x) rotate(top);else rotate(x); } LL find(LL x,LL pos){pushdown(x);if(sz[l[x]]pos-1) return x;if(sz[l[x]]pos-1) return find(r[x],pos-sz[l[x]]-1);else return find(l[x],pos); } void ans(LL x){if(x0) return;pushdown(x);ans(l[x]);if(xnx1){if(flag) printf( );flagtrue;printf(%lld,x-1);}ans(r[x]); } int main(){nread()2,mread(),acebuild(1,n,n1);while(m--){aread(),bread();pfind(ace,a),qfind(ace,b2);while(tp[q]!aceq!ace) oper(q);if(q!ace) rotate(q);while(tp[p]!ace) oper(p);tg[r[p]]^1;}ans(ace);return 0; } 我这里还是写的比较模糊我也是通过了解别人的博客才理解了splay 就是这个 - http://blog.csdn.net/skydec/article/details/20151805 转载于:https://www.cnblogs.com/OYJason/p/7887057.html
http://www.pierceye.com/news/582257/

相关文章:

  • 沈阳自助建站模板网站建设想法
  • 湖南岳阳网站建设公司黄页顺企网怎样不让网站被收录
  • 有没有专门做翻译的网站安徽建设工程信息网招标公告
  • 保险咨询网站留电话中国十大网络公司排行榜
  • 领手工在家做的网站2019网页设计与实现论文
  • 兰州微信信息平台网站建设绍兴本地网站建设
  • 关于旅游网站策划书千锋前端培训多少钱
  • 温州网站建设结构做代练网站能备案
  • 零基础学习做网站第三方装修评估公司
  • 基础微网站开发动态网站彩票投注员做啥的
  • 西安做网站设计公司爱做网站免费版
  • 效果图网站接单重庆一般建一个网站需要多少钱
  • 网站建设征求意见稿辅料企业网站建设费用
  • 上海网站建设公司服务沅江网站制作
  • 公司网站开发费用计入什么科目虚拟主机怎么建网站
  • 天津网站建设技术网页设计与制作教程版徐洪亮课后答案
  • 旅游网站建设方案简介用asp做的网站打开页面很慢
  • 做影视网站 片源从哪里来做自媒体的上那些网站
  • 邢台网站开发百度云 做网站
  • 淘宝优惠劵网站建设wordpress主题 简洁
  • 自己做电影资源网站揭阳新闻最新消息
  • 北碚免费建站哪家做得好佛山网站建设设计
  • 怎么做网站拍卖的那种wordpress主题搜索图标
  • 三亚网站建设平台查数据的权威网站
  • html网站制作答辩ppt网站备份和备案的区别
  • 网站开发需要工具免费的ps软件
  • 常州网站建设优质商家重庆互联网怎么样
  • 做网站发广告动漫网页设计报告
  • 求职招聘网站建设投标书沈阳网站建设的公司哪家好
  • 做导航网站有发展吗南京企业网站制作哪家好