한 세트의 학생들이 사진을 찍기 위해 키가 감소하지 않는 순서로 배열되어야 한다고 가정합니다. 학생 배열이 있는 경우 올바른 위치에 있지 않은 학생의 최소 수를 반환해야 합니다. 따라서 배열이 [1, 1, 4, 2, 1, 3]과 같으면 출력은 3이 됩니다. 따라서 키가 4, 3이고 마지막 1인 학생은 올바른 위치에 서 있지 않습니다.
이 문제를 해결하기 위해 다음 단계를 따릅니다. −
- 답변 :=0
- let x :=정렬된 형태의 배열
- ley y :=배열
- for i :=0 ~ 배열 크기 – 1 −
- x[i]가 y[i]와 같지 않으면 답을 1 증가
- 반환 응답
예시
이해를 돕기 위해 다음 구현을 살펴보겠습니다. −
class Solution(object): def heightChecker(self, heights): ans = 0 x = sorted(heights) y = heights for i in range(len(x)): if x[i]!=y[i]: ans+=1 return ans ob1 = Solution() print(ob1.heightChecker([1,2,4,2,1,3]))
입력
[1,1,4,2,1,3]
출력
4