LeetCode 1846. 减小和重新排列数组后的最大元素
Posted Alex Hub
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode 1846. 减小和重新排列数组后的最大元素相关的知识,希望对你有一定的参考价值。
Idea
这题其实挺简单的,首先把数组排序,然后按照要求把数组的第一位设置为1,之后遍历整个数组,按照约束条件逐个过滤,对于不符合条件的idx数,把它重置为arr[idx - 1] + 1。
Code
Python
class 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]
以上是关于LeetCode 1846. 减小和重新排列数组后的最大元素的主要内容,如果未能解决你的问题,请参考以下文章