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

网站seo优化关键词申请关闭网站

网站seo优化关键词,申请关闭网站,开发wordpress主题,有前景的网站建设http://cplusoj.com/d/senior/p/SS231025D 答案为 ∑ w [ x ] − w [ s o n [ x ] ] \sum w[x]-w[son[x]] ∑w[x]−w[son[x]]#xff0c; x x x 非儿子 要维护断边#xff0c;LCT固然可以#xff0c;但不一定需要 发现如果发生了变化#xff0c;只会由重儿子变成次重儿子…http://cplusoj.com/d/senior/p/SS231025D 答案为 ∑ w [ x ] − w [ s o n [ x ] ] \sum w[x]-w[son[x]] ∑w[x]−w[son[x]] x x x 非儿子 要维护断边LCT固然可以但不一定需要 发现如果发生了变化只会由重儿子变成次重儿子 所以我们首先要维护次重儿子 同时我们拿树状数组维护其所有祖先的重儿子与次重儿子之差。 此时我们只需要在树状数组对应位置进行查询即可 #includebits/stdc.h using namespace std; //#define int long long inline int read(){int x0,f1;char chgetchar(); while(ch0|| ch9){if(ch-)f-1;chgetchar();}while(ch0ch9){ x(x1)(x3)(ch^48);chgetchar();}return x*f;} #define Z(x) (x)*(x) #define pb push_back //mt19937 rand(time(0)); //mt19937_64 rand(time(0)); //srand(time(0)); #define N 500010 //#define M //#define mo struct node {int y, id; }; int n, m, i, j, k, T; int ans[N], w[N], nxt[N], totans, son[N], sum[N]; int u, v, su, sv, flg; vectornodeG[N]; struct Binary_tree {int cnt[N], sex; void add(int x, int y) { // if(sex) printf(Add %d : %d\n, x, y); if(!x) {cnt[0]y; return; }while(xn) cnt[x]y, xx-x; }int que(int x) {int ans0; while(x) anscnt[x], x-x-x; return anscnt[0]; } }Bin, B1;void dfs1(int x, int fa) {w[x]1;for(auto t : G[x]) {int y t.y; if(y fa) continue; dfs1(y, x); w[x]w[y]; sum[x]sum[y]; if(w[y]w[son[x]]) nxt[x]son[x], son[x]y; else if(w[y]w[nxt[x]]) nxt[x]y; }if(son[x]) totansw[x]-w[son[x]], sum[x]w[x]-w[son[x]]; // printf(sum[%lld] %lld || %lld %lld || %d\n, x, sum[x], son[x], nxt[x], w[x]); }void dfs2(int x, int fa, int dep, int p) {for(auto t : G[x]) {int y t.y, id t.id; if(y fa) continue; // printf(%d-%d\n, x, y); // dfs2(y, x); if(y son[x]) {Bin.add(w[son[x]]-w[nxt[x]], w[son[x]]-w[nxt[x]]); B1.add(w[son[x]]-w[nxt[x]], 1); ans[id]totans-sum[y]Bin.que(w[y])-w[y]*dep(p1-B1.que(w[y]))*w[y]; if(!nxt[x]) --ans[id]; // if(id4) printf(%d(totans) %d(-sum[y]) %d(_change_son) %d(-size) %d(son)\n, // totans, sum[y], Bin.que(w[y]), w[y]*dep, (p1-B1.que(w[y]))*w[y]); dfs2(y, x, dep1, p1); Bin.add(w[son[x]]-w[nxt[x]], -(w[son[x]]-w[nxt[x]])); B1.add(w[son[x]]-w[nxt[x]], -1); }else { // if(id2) printf(%d(totans) %d(-sum[y]) %d(_change_son) %d(-size) %d(son)\n, // totans, sum[y], Bin.que(w[y]), w[y]*dep, (p-B1.que(w[y]))*w[y]); ans[id]totans-sum[y]Bin.que(w[y])-w[y]*dep(p-B1.que(w[y]))*w[y]; // B1.add(w[son[x]]-w[nxt[x]], 1); dfs2(y, x, dep1, p); // B1.add(w[son[x]]-w[nxt[x]], -1); }} }signed main() { // freopen(in.txt, r, stdin); // freopen(out.txt, w, stdout);freopen(tree.in, r, stdin);freopen(tree.out, w, stdout); // Tread(); // while(T--) { // // }nread(); for(i1; in; i) {uread(); vread(); if(i1) suu, svv; G[u].pb({v, i}); G[v].pb({u, i}); }Bin.sex1; dfs1(su, sv); dfs1(sv, su); totansn-max(w[su], w[sv])-1; // printf( %d\n, totans); if(w[su]w[sv]) {Bin.add(w[su]-w[sv], w[su]-w[sv]); B1.add(w[su]-w[sv], 1); flg1; }dfs2(su, sv, 2, flg);if(w[su]w[sv]) {Bin.add(w[su]-w[sv], -(w[su]-w[sv])); B1.add(w[su]-w[sv], -1); flg0; }// printf(# %lld\n, sv); if(w[sv]w[su]) {Bin.add(w[sv]-w[su], (w[sv]-w[su])); B1.add(w[sv]-w[su], 1); flg1; }dfs2(sv, su, 2, flg);if(w[sv]w[su]) {Bin.add(w[sv]-w[su], -(w[sv]-w[su])); B1.add(w[sv]-w[su], -1); flg0; }for(i2; in; i) printf(%d\n, ans[i]); return 0; }
http://www.w-s-a.com/news/220586/

相关文章:

  • 太阳镜商城网站建设公司做网站
  • 如何制作个人作品网站宣传片拍摄合同
  • 关于微网站策划ppt怎么做做插画的网站
  • 做设计网上揽活哪个网站最好中企动力算大厂吗
  • 电子商务网站开发常用工具牡丹江吧
  • 四川成都网站制作公司wordpress 获取某个分类的文章
  • wordpress 编辑器推动门户网站建设不断优化升级
  • 做游戏网站的前景温江区建设局网站
  • 济南做微网站推广做网站seo优化总结
  • 巢湖网站建设电话长沙大型互联网公司
  • wordpress站群主机海南人
  • 云南网站建设维护商业网站建设教程
  • 云南省滇中引水工程建设管理局网站jsp个人网站设计
  • 网站建设 域名业务 邮箱互联网装饰网站
  • 建设厅技工在哪个网站上查询有了网站模板 还要怎样做
  • 城市联盟网站怎么做百度云网站建设视频教程
  • 织梦cms 官方网站网页视频如何下载到电脑
  • 查询建设公司业绩网站国外外链平台
  • 搭建直播网站需要怎么做做石材网站步骤
  • 移动网站如何做权重wordpress 统计字数 插件
  • 编写网站的软件百度指数教程
  • 网站改版建议策划书做设计什么兼职网站
  • 北京做兼职网站文创产品设计流程
  • 南阳做玉器网站wordpress 图片被缩小
  • 自己做网站卖衣服cms做网站容易不
  • 安徽安搜做的网站怎么样手机网站商城建设答辩问题
  • 分析不同网站的优缺点房产网站定制
  • 深圳工业设计大展2021论坛与网站做优化哪个更好
  • 什么网站做招聘比较好网络营销渠道管理
  • 网站建设选择什么模式淘宝网站可以做轮播吗