登录 白背景

5940. 从数组中移除最大值和最小值

https://leetcode-cn.com/problems/removing-minimum-and-maximum-from-array/

  • 提交时间:2021-11-28 05:14:48
  • 执行用时:152 ms, 在所有 Go 提交中击败了100.00%的用户
  • 内存消耗:9.5 MB, 在所有 Go 提交中击败了100.00%的用户
  • 通过测试用例:60 / 60
func minimumDeletions(nums []int) int {
    n := len(nums)
    minPos, maxPos := 0, 0
    for i := 0; i < n; i++ {
        if nums[i] > nums[maxPos] {
            maxPos = i
        }
        if nums[i] < nums[minPos] {
            minPos = i
        }
    }

    if minPos > maxPos {
        minPos, maxPos = maxPos, minPos
    }
    return min(minPos+1+(n-maxPos), min(maxPos+1, n-minPos))
}

func min(x, y int) int {
    if x < y {
        return x
    }
    return y
}