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

网站推广打包桂林模板网站建设

网站推广打包,桂林模板网站建设,高中生做网站网页,电子商务网站开发实践传送门 题意#xff1a;求树上满足三点之间距离两两相等的三元组个数 n≤1e5n\le 1e5n≤1e5 原题数据是n≤5000n\le5000n≤5000 考虑怎么做f[u][i]f[u][i]f[u][i]表示uuu为根#xff0c;深度为iii的点的个数g[u][i]g[u][i]g[u][i]表示uuu为根#xff0c;满足2点到lcalcalca的… 传送门 题意求树上满足三点之间距离两两相等的三元组个数 n≤1e5n\le 1e5n≤1e5 原题数据是n≤5000n\le5000n≤5000 考虑怎么做f[u][i]f[u][i]f[u][i]表示uuu为根深度为iii的点的个数g[u][i]g[u][i]g[u][i]表示uuu为根满足2点到lcalcalca的距离减去lcalcalca到uuu的距离为iii即dep[x]dep[y]−3∗deplcaidep[x]dep[y]-3*dep_{lca}idep[x]dep[y]−3∗deplca​i的点对个数 换句话说就是还差iii个距离满足能凑成333元组的点对个数 则ansg[u][i1]∗f[v][i];ansg[u][i1]*f[v][i];ansg[u][i1]∗f[v][i];ansf[u][i−1]∗g[v][i];ansf[u][i-1]*g[v][i];ansf[u][i−1]∗g[v][i];g[u][i1]f[u][i1]∗f[v][i];g[u][i1]f[u][i1]*f[v][i];g[u][i1]f[u][i1]∗f[v][i];f[u][i1]f[v][i];f[u][i1]f[v][i];f[u][i1]f[v][i];g[u][i−1]g[v][i];g[u][i-1]g[v][i];g[u][i−1]g[v][i]; 这式子很显然吧 发现转移的时候f[u][i1]f[v][i];f[u][i1]f[v][i];f[u][i1]f[v][i];g[u][i−1]g[v][i];g[u][i-1]g[v][i];g[u][i−1]g[v][i]; 既然只和深度有关 就可以愉快的长链剖分了 复杂度O(n)O(n)O(n) 据说可以点分O(nlogn)O(nlogn)O(nlogn)关我p事 #includebits/stdc.h using namespace std; const int RLEN122|1; #define ll long long inline char gc(){static char ibuf[RLEN],*ob,*ib;(obib)(ob(ibibuf)fread(ibuf,1,RLEN,stdin));return (ibob)?EOF:*ib; } inline int read(){char chgc();int res0,f1;while(!isdigit(ch)){if(ch-)f-f;chgc();}while(isdigit(ch))res(res(res2)1)(ch^48),chgc();return res*f; } const int N1000005; ll *f[N],*g[N],*id,tmp[N2],ans; int n,adj[N],nxt[N1],to[N1],dep[N],son[N],cnt; inline void addedge(int u,int v){nxt[cnt]adj[u],adj[u]cnt,to[cnt]v; } void dfs1(int u,int fa){for(int eadj[u];e;enxt[e]){int vto[e];if(vfa)continue;dfs1(v,u);if(dep[v]dep[son[u]])son[u]v;}dep[u]dep[son[u]]1; } void dfs2(int u,int fa){if(son[u]){f[son[u]]f[u]1,g[son[u]]g[u]-1,dfs2(son[u],u);}f[u][0]1;ansg[u][0];for(int eadj[u];e;enxt[e]){int vto[e];if(vfa||vson[u])continue;f[v]id,iddep[v],g[v]iddep[v],iddep[v]*2;dfs2(v,u);for(int idep[v]-1;~i;i--){ansg[u][i1]*f[v][i];if(i)ansf[u][i-1]*g[v][i];g[u][i1]f[u][i1]*f[v][i];f[u][i1]f[v][i];}for(int idep[v]-1;i;i--){g[u][i-1]g[v][i];}} } int main(){nread();for(int i1;in;i){int uread(),vread();addedge(u,v),addedge(v,u);}dfs1(1,0);idtmp;f[1]id,iddep[1],g[1]iddep[1],iddep[1]*2;dfs2(1,0);coutans; }转载于:https://www.cnblogs.com/stargazer-cyk/p/11145583.html
http://www.zqtcl.cn/news/658467/

相关文章:

  • 做网站不会框架网站开发逻辑图
  • 东莞网站制作个性化宜都网站建设
  • 空壳网站查询网络服务提供者不履行法律、行政法规
  • 付费阅读网站代码做网站需要什么软件
  • 泗阳网站设计外贸网站特点
  • 国外logo设计网站推荐网页浏览器证书失效怎么修复
  • asp.net建立手机网站校园网站设计代码
  • 网站图标怎么下载肇庆新农村建设内容在哪个网站
  • 上海建站哪家好临沂建设工程质量 监督网站
  • 中国建设银行网站地图上海最新新闻热点事件
  • wordpress4.95淘宝优化标题都是用什么软件
  • 大网站用wordpress吗网站广告费怎么做分录
  • 江西建设安全网站会展平面设计主要做什么
  • 阿里巴巴免费做网站吗企业商务网站建设策划书
  • 广州网站制作哪家专业深圳网站制作开发
  • 网站icp备案管理系统个人网站源代码
  • 西安网站建设公司云网wordpress 文章分类
  • 长沙优化网站服务r18cn wordpress
  • 建材网站设计延安网站建设电话
  • 做视频网站犯法么华为公司网站建设案例分析
  • 陕煤化建设集团网站矿建二公司网站制作系统
  • 网站建设类别wordpress下载付费
  • 廊坊做网站的成都网站建设网站建设
  • 如何自己开网站网络服务检测与维护
  • 古镇网站建设熊掌号专业网站开发哪里有
  • 专业做网站服务上海网站开发哪家好
  • 科普重庆网站浙江网站开发
  • 怎么搭建自己的网站后台邹城网站建设哪家好
  • 二手房在哪个网站做合同wordpress 局域网 慢
  • 全包胶衣网站wordpress 3.1