LeetCode之Minimize Maximum Pair Sum in Array(Kotlin)

201 阅读1分钟

问题:


方法: 易知最大数对和最小的情况必在有序数列,无序必然导致数对和较大,所以先进行排序,然后取最大和即可。

package com.eric.leetcode

class MinimizeMaximumPairSumInArray {
    fun minPairSum(nums: IntArray): Int {
        nums.sort()
        var result = 0
        for (index in 0..nums.size / 2) {
            if (result < nums[index] + nums[nums.lastIndex - index]) {
                result = nums[index] + nums[nums.lastIndex - index]
            }
        }
        return result
    }
}

fun main() {
    val input = intArrayOf(3, 5, 2, 3)
    val minimizeMaximumPairSumInArray = MinimizeMaximumPairSumInArray()
    print(minimizeMaximumPairSumInArray.minPairSum(input))
}

有问题随时沟通

具体代码实现可以参考Github