P1268 树的重量

构造类题目,看不出个所以然来。。。

emmm,只好看题解:

只有两个点,那一条路径就是$ans$

考虑三个点,那么$3$这个点相对于树上的路径(已经加入树上的边的距离)

为:$(dis[1][3]+dis[2][3]-dis[1][2])/2$

秒啊,这样就可以求出那一条蓝边的长度了

考虑四个点的情况

对于第四个点,我们发现单纯只求$(dis[1][4]+dis[2][4]-dis[1][2])/2$得到的答案并不是我们想要的,重复了一部分

转而考虑$3$,那么$(dis[1][3]+dis[3][4]-dis[1][3])/2$这样得到的答案才是我们所想要的

那么对于每个点加入树上的边的答案为

$min((dis[1][i]+dis[j][i]-dis[1][j])/2)$

#include<bits/stdc++.h>using namespace std;int d[30][30],n;int main()
{while(scanf("%d",&n)!=EOF){if(!n) break;for(int i=1;i<n;i++){for(int j=i+1;j<=n;j++)scanf("%d",&d[i][j]);}int sum=d[1][2];for(int i=3;i<=n;i++){int tmp=0x7fffffff;for(int j=2;j<i;j++){tmp=min(tmp,(d[1][i]+d[j][i]-d[1][j])/2);}sum+=tmp;}printf("%d\n",sum);}return 0;
}

转载于:https://www.cnblogs.com/song-/p/9832567.html

洛谷—— P1268 树的重量相关推荐

  1. [洛谷P1268]树的重量

    原题传送门 方法一 这道题是贪心.主要的难点在于合并路径压缩长度的策略.这里采用的方法是让一个个结点并入已经构建好的树中,并记录该结点接入树的位置.接入树到该结点的长度.模拟注意细节即可. 1 #in ...

  2. 洛谷1268树的重量(树)

    题目描述 树可以用来表示物种之间的进化关系.一棵"进化树"是一个带边权的树,其叶节点表示一个物种,两个叶节点之间的距离表示两个物种的差异.现在,一个重要的问题是,根据物种之间的距离 ...

  3. 洛谷 P1411 树

    最近在做些树形DP练练手 原题链接 大意就是给你一棵树,你可以断开任意数量的边,使得剩下的联通块大小乘积最大. 样例 8 1 2 1 3 2 4 2 5 3 6 3 7 6 8 输出 18 我首先想的 ...

  4. 洛谷 - P3374 树状数组1

    题目描述 如题,已知一个数列,你需要进行下面两种操作: 将某一个数加上 xx 求出某区间每一个数的和 输入格式 第一行包含两个正整数 n,mn,m,分别表示该数列数字的个数和操作的总个数. 第二行包含 ...

  5. 洛谷 P3374 树状数组模板1

    题目大意 给出一个初始数组,有两种操作,一种是将第x个数加上k,一种是求[x,y]区间和. 题目分析 直接暴力肯定TLE,我们可以用简单线段树或者树状数组优化,这里作者就采用简单线段树通过 #incl ...

  6. 洛谷.P3374 树状数组

    题目描述 如题,已知一个数列,你需要进行下面两种操作: 将某一个数加上 x 求出某区间每一个数的和 输入格式 第一行包含两个正整数 n,m分别表示该数列数字的个数和操作的总个数. 第二行包含 n 个用 ...

  7. 洛谷P1873-砍树(二分答案)

    题目描述: 伐木工人米尔科需要砍倒M米长的木材.这是一个对米尔科来说很容易的工作,因为他有一个漂亮的新伐木机,可以像野火一样砍倒森林.不过,米尔科只被允许砍倒单行树木. 米尔科的伐木机工作过程如下:米 ...

  8. 洛谷P3384 - 树链剖分(树链剖分模板题)

    题目链接 https://www.luogu.org/problemnew/show/P3384 [描述] 树链剖分模板题,记一下板子 #include<bits/stdc++.h> #d ...

  9. 洛谷 [P2590] 树的统计

    迷之TLE #include <iostream> #include <cstdio> #include <cstring> #include <algori ...

最新文章

  1. matlab数据接口技术,实战MATLAB之文件与数据接口技术
  2. 5.QT中关于HTTPClient相关的操作,Json数据传输
  3. 数据库表操作、数据类型及完整性约束
  4. 【探索PowerShell 】【十二】筛选器 - Filters
  5. 【ZJOI2009】【BZOJ1432】Function(找规律)
  6. 阿里影业“灯塔平台”今日正式启动,阿里影视云解决方案强势推出
  7. J2EE(环境搭建)
  8. ARP表 MAC表 路由表
  9. 网络历史之金融投资三剑客0
  10. 手机市场的竞争,用户价值才是硬道理
  11. Jupyter Notebook 内核似乎挂掉了,它很快将自动重启
  12. 《大型分布式网站架构设计与实践》
  13. 60条有名的原则与定理
  14. Android微信撤回消息如何恢复?
  15. c语言编程TLC2543AD采集,基于C语言的89C51与TLC2543AD转换器的驱动程序的设计 实训报告...
  16. [洛谷P1024]python一元三次方程求解
  17. windows电脑上架app store的软件
  18. 为什么有人说C++是最难学的编程语言? (4个回答)
  19. Microsoft Store无法联网检查网络
  20. 51Nod1631 小鲨鱼在51nod小学

热门文章

  1. 变量、属性、函数、方法总结
  2. vue打开二级或者三级页面传输对象,再刷新浏览器数据丢失问题解决(vue使用router传递数据)
  3. 【Mybatis】maven配置pom.xml时找不到依赖项(已解决)
  4. 最简单的基于FFmpeg的libswscale的示例附件:测试图片生成工具
  5. myeclipse中加入jad查看jar源代码
  6. php cli运行获取参数,php cli传递参数的方法
  7. linux下mysql常用命令_linux 下 mysql 常用命令
  8. Java常用的几个Json库
  9. 【编译器】VSCode配置Go语言开发环境
  10. 【HAOI2008】【BZOJ1045】糖果传递(环形纸牌均分,前缀和)