在线编程-44最大边权和

简介: 记录并分享自己的做题想法及源码

题目

现在有n个点(1<=n<=1000),每个点都有一个值称为点权ai(ai为偶数,1<=ai<=1000),现在可以将任意两个点相连,连起来以后这条边也有一个值称为边权,这个边的边权为这两个点的点权之和的一半。现在需要你添加n-1条边,问将这n个点连通以后(连通是指任意两个点都能互相到达)的最大的边权和是多少。
输入点的数量n;和n个数,表示点权的值
输出最大的边权和

分析

拿到这个题目,个人理解,总共有以下要点:

  • 所有点全部连通:意味着所有数字要使用一遍
  • 添加n-1条边:控制上限
  • 边权为这两个点的点权之和的一半:意味着两个点数值越大,则边权越大;

通过以上,可以得出,所有点均和最大点做匹配,则能拿到最大的边权和

而1<=n<=1000,则应该分类讨论

  • n=1:无边,因此为0
  • n=2:两数之和/2
  • 其他:sum = (max*(n-2)+n个点之和)/2

源码

详细源码见 https://code.aliyun.com/xinYe/aliProgrammaCode.git

目录
相关文章
|
弹性计算 IDE 安全
打造在线编程环境
打造自己的在线编程环境,使用Coding WebIDE来实现在线的IDE,以便我们在不方便使用本地编辑器的时候可以使用在线编辑器来进行我们的在线编辑操作。
打造在线编程环境
|
6月前
|
搜索推荐 JavaScript 前端开发
|
4月前
|
存储 安全 Android开发
探索Android开发之旅:从新手到专家的蜕变之路
【10月更文挑战第8天】在这篇文章中,我们将共同踏上一段激动人心的旅程,深入探索Android开发的奥秘。无论你是初涉编程世界的新手,还是渴望提升技能的开发者,这里都有你需要的知识与启示。通过简洁明了的语言和实际案例,我们将一起解锁Android开发的核心概念、掌握关键技能,并最终实现从新手到专家的华丽转变。
|
缓存 Java 编译器
初入编程之门的个人建议1.0
初入编程之门的个人建议1.0
59 0
|
SQL 监控 物联网
嵌入式工程师学习路线(软件类)
嵌入式工程师学习路线(软件类)
1419 1
|
SQL IDE 前端开发
猿创征文|计算机科班生的成长路之那些相见恨晚的开发工具
猿创征文|计算机科班生的成长路之那些相见恨晚的开发工具
115 0
|
小程序 搜索推荐 Java
程序员推荐的良心网站合集!(第二期)
程序员推荐的良心网站合集!(第二期)
271 0
程序员推荐的良心网站合集!(第二期)
|
程序员
良心之作送你几个Xsheel使用小技巧(2)
良心之作送你几个Xsheel使用小技巧
121 0
良心之作送你几个Xsheel使用小技巧(2)
良心之作送你几个Xsheel使用小技巧(1)
良心之作送你几个Xsheel使用小技巧
137 0
良心之作送你几个Xsheel使用小技巧(1)
|
机器学习/深度学习 Cloud Native 前端开发
阿里技术人和开发者朋友们的私藏书单
在快速变化、充满不确定的时代大背景下,拥抱变化成为常态。该如何应对、如何破局? 通过读书持续学习、持续精进,可能是其中成本最低、最高效的一种方式。
阿里技术人和开发者朋友们的私藏书单