英雄联盟对战,为求公平需要选取两组分值相差最低的队伍
一.分析
两组分值相差最低的,也就是说一个数组分成两个子集,其子集和的差值最小
可以换成背包问题,即从数组中选取一半的数作为子集,让这些子集的和与原来总和的一半越接近即可
从中选取与一半的总和最接近的一个子集(即需要排序)
二.代码如下
object TestLm extends App {
import scala.io.StdIn
//输入
println("请输入10个数字,以空格区分:")
val line = StdIn.readLine()
//对输入切割成数组并且转为
原创
2020-12-15 21:25:00 ·
458 阅读 ·
0 评论