arr是一个可能包含重复元素的整数数组,我们将这个数组分割成几个块(子数组),并将这些块分别进行排序。之后再连接起来,使得连接的结果和按升序排序后的原数组相同。请问我们最多能将数组分成多少块?
示例1

输入

[5,4,3,2,1]

输出

1

说明

将数组分成2块或者更多块,都无法得到所需的结果。例如,分成[5, 4], [3, 2, 1]的结果是[4, 5, 1, 2, 3],这不是有序的数组。

示例2

输入

[2,1,3,4,4]

输出

4

说明

我们可以把它分成两块,例如[2, 1], [3, 4, 4]。然而,分成[2, 1], [3], [4], [4]可以得到最多的块数。

加载中...