1846. 减小和重新排列数组后的最大元素
Idea这题其实挺简单的,首先把数组排序,然后按照要求把数组的第一位设置为1,之后遍历整个数组,按照约束条件逐个过滤,对于不符合条件的idx数,把它重置为arr[idx - 1] + 1。
Code Pythonclass Solution: def maximumElementAfterDecrementingAndRearranging(self, arr: List[int]) -> int: arr.sort() arr[0] = 1 for idx in range(1, len(arr)): if abs(arr[idx] - arr[idx - 1]) > 1: arr[idx] = arr[idx - 1] + 1 return arr[-1]