题目描述:
给定整数数组 A,每次 move 操作将会选择任意 A[i]
,并将其递增 1
。
返回使 A
中的每个值都是唯一的最少操作次数。
我的思路:
先对数组进行排序,重复的数一定排在一起,再对重复的数进行move操作
若A[i]小于A[i+1],说明前后两数唯一,不做额外操作
若A[i]与A[i+1]相同,则对A[i+1]进行一次move操作,使前后两数唯一
若A[i]大于A[i+1],说明A[i]进行过一次以上move操作,需要对A[i+1]进行多一次的move操作才可使两数唯一,而需要进行的move操作的次数为(A[i]-A[i+1]+1)
代码如下:
以上
200322 Rewivy
原文地址:https://www.cnblogs.com/rewivy/p/12547695.html
时间: 2024-10-11 10:50:19