Class Solution
- java.lang.Object
-
- g2701_2800.s2717_semi_ordered_permutation.Solution
-
public class Solution extends Object
2717 - Semi-Ordered Permutation.Easy
You are given a 0-indexed permutation of
n
integersnums
.A permutation is called semi-ordered if the first number equals
1
and the last number equalsn
. You can perform the below operation as many times as you want until you makenums
a semi-ordered permutation:- Pick two adjacent elements in
nums
, then swap them.
Return the minimum number of operations to make
nums
a semi-ordered permutation.A permutation is a sequence of integers from
1
ton
of lengthn
containing each number exactly once.Example 1:
Input: nums = [2,1,4,3]
Output: 2
Explanation: We can make the permutation semi-ordered using these sequence of operations:
1 - swap i = 0 and j = 1. The permutation becomes [1,2,4,3].
2 - swap i = 2 and j = 3. The permutation becomes [1,2,3,4].
It can be proved that there is no sequence of less than two operations that make nums a semi-ordered permutation.
Example 2:
Input: nums = [2,4,1,3]
Output: 3
Explanation: We can make the permutation semi-ordered using these sequence of operations:
1 - swap i = 1 and j = 2. The permutation becomes [2,1,4,3].
2 - swap i = 0 and j = 1. The permutation becomes [1,2,4,3].
3 - swap i = 2 and j = 3. The permutation becomes [1,2,3,4].
It can be proved that there is no sequence of less than three operations that make nums a semi-ordered permutation.
Example 3:
Input: nums = [1,3,4,2,5]
Output: 0
Explanation: The permutation is already a semi-ordered permutation.
Constraints:
2 <= nums.length == n <= 50
1 <= nums[i] <= 50
nums is a permutation.
- Pick two adjacent elements in
-
-
Constructor Summary
Constructors Constructor Description Solution()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int
semiOrderedPermutation(int[] nums)
-