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

网站开发进阶实训报告廊坊安次区网站建设公司

网站开发进阶实训报告,廊坊安次区网站建设公司,沧州做网站推广,建设网站的要求吗Description 一棵树上有$n$个节点,编号分别为$1$到$n$,每个节点都有一个权值$w_i$. 有三种操作: $1.CHANGE\;u\;t$:把结点$u$的权值改为$t$; $2.QMAX\;u\;v$:询问从点$u$到点$v$的路径上的节点的最大权值; $3.QSUM\;u\;v$:询问从点$u$到点$v$的路径上的节点的权值和. $P.S.$ 从…Description 一棵树上有$n$个节点,编号分别为$1$到$n$,每个节点都有一个权值$w_i$. 有三种操作: $1.CHANGE\;u\;t$:把结点$u$的权值改为$t$; $2.QMAX\;u\;v$:询问从点$u$到点$v$的路径上的节点的最大权值; $3.QSUM\;u\;v$:询问从点$u$到点$v$的路径上的节点的权值和. $P.S.$ 从点$u$到点$v$的路径上的节点包括$u$和$v$本身. Input 第$1$行,$1$个整数$n$,表示节点的个数. 接下来$n-1$行,每行$2$个整数$u$和$v$,表示节点$u$和$v$之间有一条边相连. 接下来$1$行,每行$n$个整数,第$i$个整数$w_i$.表示节点$i$的权值. 接下来$1$行,$1$个整数$q$,表示操作的总数. 接下来$q$行,每行$1$个操作,以$CHANGE\;u\;t$或者$QMAX\;u\;v$或者$QSUM\;u\;v$的形式给出. Output 对于每个$QMAX$”或者”$QSUM$”的操作,每行输出$1$个整数表示要求输出的结果. Sample Input 4 1 2 2 3 4 1 4 2 1 3 12 QMAX 3 4 QMAX 3 3 QMAX 3 2 QMAX 2 3 QSUM 3 4 QSUM 2 1 CHANGE 1 5 QMAX 3 4 CHANGE 3 6 QMAX 3 4 QMAX 2 4 QSUM 3 4 Sample Output 4 1 2 2 10 6 5 6 5 16 HINT $1\;\leq\;n\;\leq\;30000,0\;\leq\;q\;\leq\;200000$. 中途操作中保证每个节点的权值$w_i\in[-30000,30000]$. Solution 树链剖分线段树. 不会树链剖分的,戳这-学习笔记-树链剖分 #includecmath #includectime #includequeue #includestack #includecstdio #includevector #includecstring #includecstdlib #includeiostream #includealgorithm #define N 30005 #define M 60005 using namespace std; struct linetree{int l,r,s,m; }lt[M]; struct graph{int nxt,to; }e[M]; char c[10]; int g[N],w[N],ww[N],n,q,u,v,cnt; int f[N],p[N],dep[N],siz[N],son[N],top[N]; /*top[u]:u所在的链的顶端节点,son[u]:u的重儿子*/ inline void addedge(int x,int y){e[cnt].nxtg[x];g[x]cnt;e[cnt].toy; } inline void dfs1(int u){int m0;siz[u]1;for(int ig[u];i;ie[i].nxt)if(!dep[e[i].to]){f[e[i].to]u;dep[e[i].to]dep[u]1;dfs1(e[i].to);siz[u]siz[e[i].to];if(siz[e[i].to]m){son[u]e[i].to;msiz[e[i].to];}} } inline void dfs2(int u,int tp){top[u]tp;p[u]cnt;ww[cnt]w[u];if(son[u]) dfs2(son[u],tp);for(int ig[u];i;ie[i].nxt){if(e[i].to!f[u]e[i].to!son[u])dfs2(e[i].to,e[i].to);} } inline void build(int u,int l,int r){lt[u].ll;lt[u].rr;if(lt[u].llt[u].r){int lefu1,rigu1|1;int mid(lt[u].llt[u].r)1;build(lef,l,mid);build(rig,mid1,r);lt[u].slt[lef].slt[rig].s;lt[u].mmax(lt[lef].m,lt[rig].m);}else lt[u].slt[u].mww[lt[u].l]; } inline void cover(int u,int x,int k){if(lt[u].llt[u].r){int lefu1,rigu1|1;int mid(lt[u].llt[u].r)1;if(xmid) cover(lef,x,k);else cover(rig,x,k); lt[u].slt[lef].slt[rig].s;lt[u].mmax(lt[lef].m,lt[rig].m);}else lt[u].slt[u].mk; } inline int sum(int u,int l,int r){if(lt[u].lllt[u].rr)return lt[u].s;if(lt[u].llt[u].r){int lefu1,rigu1|1,ret0;int mid(lt[u].llt[u].r)1;if(lmid) retsum(lef,l,r);if(rmid) retsum(rig,l,r);return ret;} } inline int qsum(int x,int y){int ret0;while(top[x]!top[y]){if(dep[top[x]]dep[top[y]]){retsum(1,p[top[x]],p[x]);xf[top[x]];}else{retsum(1,p[top[y]],p[y]);yf[top[y]];}}if(p[x]p[y]){int tx;xy;yt;}retsum(1,p[x],p[y]);return ret; } inline int ask(int u,int l,int r){if(lt[u].lllt[u].rr)return lt[u].m;if(lt[u].llt[u].r){int lefu1,rigu1|1,ret-30000;int mid(lt[u].llt[u].r)1;if(lmid) retmax(ret,ask(lef,l,r));if(rmid) retmax(ret,ask(rig,l,r));return ret;} } inline int qmax(int x,int y){int ret-30000;while(top[x]!top[y]){if(dep[top[x]]dep[top[y]]){retmax(ret,ask(1,p[top[x]],p[x]));xf[top[x]];}else{retmax(ret,ask(1,p[top[y]],p[y]));yf[top[y]];}}if(p[x]p[y]){int tx;xy;yt;}retmax(ret,ask(1,p[x],p[y]));return ret; } inline void Aireen(){scanf(%d,n);for(int i1,x,y;in;i){scanf(%d%d,x,y);addedge(x,y);addedge(y,x);}for(int i1;in;i)scanf(%d,w[i]);dep[1]1;dfs1(1);cnt0;dfs2(1,1);build(1,1,n);scanf(%d,q);while(q--){scanf(%s%d%d,c,u,v);if(c[1]H) cover(1,p[u],v);else if(c[1]M) printf(%d\n,qmax(u,v));else printf(%d\n,qsum(u,v));} } int main(){freopen(count.in,r,stdin);freopen(count.out,w,stdout);Aireen();fclose(stdin);fclose(stdout);return 0; } 转载于:https://www.cnblogs.com/AireenYe/p/6219169.html
http://www.pierceye.com/news/738510/

相关文章:

  • jquery插件网站推荐打开网站自动跳转代码
  • 佛山顺德容桂网站制作写作平台
  • 网站源码下载pdf文件品质好房
  • 山网站建设长沙网站开发湖南微联讯点不错
  • 网站建设的方案模板邢台123今天的招聘信息
  • 一个网站做app网站如何做收款二维码
  • 济南seo网站优化网站开发源代码 百度文库
  • 东西湖区建设局网站制作网站需要钱吗
  • 自己买服务器能在wordpress建网站欧美色影网站
  • 网站支付页面设计金华企业网站建设公司
  • wordpress评论模块临沂seo网站管理
  • 四川法制建设网站产品推广步骤
  • 服务器 网站建设比较容易做流量的网站
  • 网站建设基础实训报告天津滨海新区地图全图
  • 兰西网站建设深圳58同城招聘网
  • 兰州网站建设程序烟台赶集网网站建设
  • 自己建立网站后怎么做淘客wordpress需要npv
  • 简单网站建设推荐wordpress主题ashley
  • 单页网站开发实例下载电商营销渠道有哪些
  • 沈阳科技网站首页东营市做网站
  • 网站移动端开发公司客户评价网站建设
  • 有没有做问卷还能赚钱的网站鲜花网站数据库建设
  • 二手房房产网站建设下载网站 源码
  • 做简单手机网站多少钱呀唐山哪里建轻轨和地铁
  • jsp是做网站后台的吗wordpress设置备份
  • 做网站一般使用什么算法织梦 导航网站 模板
  • 网站建设服务费合同如何解决网站只收录首页的一些办法
  • 用js做网站登录阿里巴巴运营岗位
  • 老渔哥网站建设公司重庆建设厂
  • 怎么建网站手机版松门建设规划局网站