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

如何浏览国外网站?公司申请网站建设申请理由

如何浏览国外网站?,公司申请网站建设申请理由,个人微信小程序免费制作平台,搜索引擎优化的完整过程这道题我自己的想法只有对每个点都用一遍Dijkstra然后再求和#xff0c;显然会超时#xff0c;所以我都没有尝试。 研究了一下题解#xff0c;发现题解很巧妙#xff0c;自己对树的处理还是太稚嫩#xff0c;之前树链剖分学的都忘光了。 对于固定根节点的#xff0c;我…这道题我自己的想法只有对每个点都用一遍Dijkstra然后再求和显然会超时所以我都没有尝试。 研究了一下题解发现题解很巧妙自己对树的处理还是太稚嫩之前树链剖分学的都忘光了。 对于固定根节点的我们应该使用树状dp dp[u]∑v∈son(u)dp[v]sz[v]dp[u]\sum_{v\in son(u)} dp[v]sz[v] dp[u]v∈son(u)∑​dp[v]sz[v] 其中dp[u]dp[u]dp[u]表示以u为根节点的子树中根节点u到其儿子节点的所有距离之和之所以加上sz[v]sz[v]sz[v]是因为长度为1如果长度不固定的话只需要乘上长度就可以了。 通过上面的dp我们可以算出以一个节点为根节点的答案但是其他节点呢朴素的想法是对其他节点每个也进行相同的操作这样的时间复杂度是O(n2)O(n^2)O(n2)好像还可以接受。 题解给出了更优秀的做法假设我们已经求出了以节点u为根节点的树的答案dp[u]dp[u]dp[u]对于其直接孩子v我们是有办法直接求出以v为根节点的答案的。 最主要的性质是如果更换了根节点只会影响这两个相邻节点的dp值对其他节点的dp值是不会有影响的。因此我们只需要更新这两个节点即可。 首先我们应该从dp[u]dp[u]dp[u]中减去dp[v]sz[v]dp[v]sz[v]dp[v]sz[v]因为这个时候是以v为根节点的然后更新sz[u]sz[u]sz[u]然后再给dp[v]dp[v]dp[v]加上dp[u]sz[u]dp[u]sz[u]dp[u]sz[u]再更新sz[v]sz[v]sz[v]。这样就得到了正确的答案。 代码实现的话首先进行一次树状dp然后再进行回溯。 发现题解中的代码很精炼仔细学习了一下自己实现了一个差不多的几乎没有区别。学到了使用emplace_backemplace\_backemplace_back的复杂度好像更加优秀。 还是要多做hard题目对自己的提升比较大。 class Solution { public:vectorint dp,sz,ans;vector vectorint graph;void Init(int n, vectorvectorint edges){dp.resize(n, 0);sz.resize(n, 0);ans.resize(n, 0);graph.resize(n, {});int u,v;for(auto edge:edges){u edge[0]; v edge[1];graph[u].emplace_back(v);graph[v].emplace_back(u);}}void dfs(int u,int father){sz[u] 1; dp[u] 0;for(auto v:graph[u]){if(v father) continue;dfs(v, u);sz[u] sz[v];dp[u] dp[v] sz[v];}}void dfs2(int u, int father){ans[u] dp[u];int dpu, dpv, szu, szv;for(auto v:graph[u]){if(v father) continue;dpu dp[u]; dpv dp[v];szu sz[u]; szv sz[v];dp[u] - dp[v] sz[v];sz[u] - sz[v];dp[v] dp[u] sz[u];sz[v] sz[u];dfs2(v, u);dp[u] dpu; dp[v] dpv;sz[u] szu; sz[v] szv;}}vectorint sumOfDistancesInTree(int N, vectorvectorint edges) {Init(N, edges);dfs(0, -1);dfs2(0, -1);return ans;} };
http://www.zqtcl.cn/news/305643/

相关文章:

  • 云南省住房建设厅网站代理二级分销系统
  • 四川建设人才培训网站临沂网站制作页面
  • 用vue做网站建设工程合同属于什么合同
  • 赶集的网站怎么做广告投放报价
  • php 家政网站白嫖云服务器
  • 长春网站关键词推广优秀网站建设哪个公司好
  • php实战做网站视频教程站长工具网站测速
  • 当下网站建设常见的网址有哪些
  • 洪雅网站建设事业单位门户网站建设包含内容
  • 外网如何查看局域网建设的网站区块链开发工程师要求
  • 网站首页三张海报做多大怎么做网上直营店网站
  • 网站制作新手教程视频省建设厅网站安全生产标准化
  • 自动建设网站系统阿里云虚拟主机多网站
  • 区块链app排名网站seo其应用
  • 海口网站建设咨询一般网站建设需求有哪些方面
  • 免费网站建设朋友交流模板王网站
  • wordpress不同分类不同广告 文章属于不同分类网站 优化手机版
  • 淮安市建设银行网站首页王也是谁
  • 好用的网站管理系统给wordpress程序提速
  • 网页设计模板的网站网站开发包括哪些
  • 做网站的标准国外html5网站模板
  • 手机网站设计公司立找亿企邦郑州seo网络营销技术
  • 网站设计优秀作品网站开发的背景知识
  • 响应式网站建设流程温州网站优化案例
  • 谢岗镇网站建设上海的网吧
  • 厦门网站建设 智多星做印刷的有什么网站
  • 怎样做原创短视频网站wordpress文章加音频
  • 建设一个网站所需要注意的最有前途的15个专业
  • 橱柜手机网站模板软件设计说明书
  • 山西云起时网站建设wordpress 字体大小