首页 > 其他 > 详细

leetcode-945

时间:2020-03-23 01:14:31      阅读:73      评论:0      收藏:0      [点我收藏+]

本着解题的思路,这题是好解决的,但是如果实际场景的话,首先sort为首的就不该首选,当然可能sort的比非sort还要快(逃

 

func minIncrementForUnique(A []int) int {
    sort.Ints(A)
    var nums int
    for i:= 0 ;i<len(A)-1;i++ {
        if A[i] >= A[i+1] {
            nums += (A[i]-A[i+1] +1)
            A[i+1] += (A[i]-A[i+1] +1)
        }
    }

    return nums
}

 

func minIncrementForUnique(A []int) int {
    if len(A) == 0 {
        return 0
    }
    sort.Ints(A)
    res, value := 0, A[0]

    for i := 1; i < len(A); i++ {
        if A[i] <= value {
            value++
            res += value - A[i]
        } else {
            value = A[i]
        }
    }
    return res
}

 

安能辨我是雌雄。

 

end

leetcode-945

原文:https://www.cnblogs.com/CherryTab/p/12549466.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!