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

给个网站带颜色广告联盟接广告

给个网站带颜色,广告联盟接广告,渭南建设网,网站停留时间~~~~~ P3565 [POI2014] HOT-Hotels ~~~~~ 总题单链接 思路 ~~~~~ 设 g [ u ] [ i ] g[u][i] g[u][i] 表示在 u u u 的子树内,距离 u u u 为 i i i 的点的个数。 ~~~~~ 设 d p [ u ] [ i ] dp[u][i] dp[u][i] 表示: u u u 的子树内存在两个点 x , …

~~~~~      P3565 [POI2014] HOT-Hotels ~~~~~      总题单链接

思路

~~~~~       g [ u ] [ i ] g[u][i] g[u][i] 表示在 u u u 的子树内,距离 u u u i i i 的点的个数。

~~~~~       d p [ u ] [ i ] dp[u][i] dp[u][i] 表示: u u u 的子树内存在两个点 x , y x,y x,y,设 d i s ( x , l c a ) = d i s ( y , l c a ) = d dis(x,lca)=dis(y,lca)=d dis(x,lca)=dis(y,lca)=d d i s ( l c a , u ) = k dis(lca,u)=k dis(lca,u)=k i = d − k i=d-k i=dk。举个栗子:


~~~~~      上图中 d p [ 1 ] [ 1 ] = 3 dp[1][1]=3 dp[1][1]=3({x=4,y=5},{x=4,y=8},{x=6,y=8})。

~~~~~      对于每个 u u u

~~~~~       a n s = a n s + d p [ u ] [ 0 ] ans=ans+dp[u][0] ans=ans+dp[u][0]

~~~~~       a n s = a n s + ∑ x , y ∈ s o n ( u ) , x ! = y d p [ x ] [ j + 1 ] ∗ g [ y ] [ j − 1 ] ans=ans+\sum_{x,y\in son(u),x!=y}dp[x][j+1]*g[y][j-1] ans=ans+x,yson(u),x!=ydp[x][j+1]g[y][j1],为什么是 j + 1 j+1 j+1 j − 1 j-1 j1?因为 u u u y y y 已经补了两个,不懂的同学可以画个图看一下。

~~~~~       d p [ u ] [ i ] = d p [ u ] [ i ] + g [ x ] [ i − 1 ] ∗ g [ y ] [ i − 1 ] dp[u][i] =dp[u][i]+g[x][i-1]*g[y][i-1] dp[u][i]=dp[u][i]+g[x][i1]g[y][i1],这是 k = 0 k=0 k=0 的情况。

~~~~~       d p [ u ] [ i ] = d p [ u ] [ i ] + d p [ v ] [ i − 1 ] dp[u][i]=dp[u][i]+dp[v][i-1] dp[u][i]=dp[u][i]+dp[v][i1]

~~~~~      以上公式可以用前缀和做到 O ( N ) O(N) O(N) 转移。

~~~~~      时间复杂度 O ( N 2 ) O(N^2) O(N2),空间复杂度 O ( N 2 ) O(N^2) O(N2)

~~~~~      发现这道题可以用长链剖分将时间复杂度优化至 O ( N ) O(N) O(N),但这个以后再将。

代码

#include<bits/stdc++.h>
#define ll long long
using namespace std;
int n;ll ans;vector<int>eg[5002];
int f[5002][5002],g[5002][5002];
inline void dfs(int fa,int p)
{f[p][0]=1;for(int v:eg[p]) {if(v==fa)continue;dfs(p,v);for(int i=0;i<=n;i++)ans+=g[p][i]*(i==0?0:f[v][i-1])+g[v][i+1]*f[p][i];for(int i=0;i<=n;i++)g[p][i]+=f[p][i]*(i==0?0:f[v][i-1])+g[v][i+1];for(int i=1;i<=n;i++)f[p][i]+=f[v][i-1];}
}
signed main(){cin>>n;for(int i=1;i<n;i++) {int u,v;cin>>u>>v;eg[u].push_back(v);eg[v].push_back(u);}dfs(0,1);cout<<ans;return 0;
}
http://www.hengruixuexiao.com/news/44647.html

相关文章:

  • 企业公司网站制作黑科技推广软件
  • 高密哪里有做网站的白百度一下你就知道
  • 网站建设管理工作经验介绍百度安装
  • 如何做网站拉动条北京网站优化企业
  • 免费做网站支持绑定品牌网络营销策划书
  • 做网站初级教程百度站长平台注册
  • 网站建设与维护管理办法竞价推广员月挣多少
  • 网站建设毕业设计开题报告百度seo分析工具
  • 咸阳学校网站建设公司打开百度搜索引擎
  • 日本可以做的h游戏视频网站seo标题优化的心得总结
  • 沈阳网站建设方案网站查询入口
  • 网站查询服务器ip欧洲网站服务器
  • 网站制作软件图标武汉seo关键字推广
  • 常州外贸集团 网站建设海口关键词优化报价
  • 初中信息技术 网站制作如何利用互联网宣传与推广
  • 大型建设工程类考试辅导网站爱站seo工具
  • 做与不做赞美网站百度小程序怎么进入
  • 网站怎么做图片转换软文推广做得比较好的推广平台
  • 怎么用手机做网站平台网站注册账号
  • 外国人做的汉字网站今天nba新闻最新消息
  • 地下城做心悦任务的网站在哪里可以免费自学seo课程
  • 网站设计报价方案产品推广活动策划方案
  • 弹性云主机做网站如何在百度上推广业务
  • 江津哪里找做网站的免费单页网站在线制作
  • 网站开发工作周记网页制作代码大全
  • 良匠网站建设系统优化工具
  • 纯静态企业网站软文街怎么样
  • 建设银行网站公告在哪国外域名购买
  • 网站制作 北京黄山seo推广
  • b2b网站流量建设b站怎么推广