# 1051. Height Checker 高度检查器

@TOC

## # 题目描述

Students are asked to stand in non-decreasing order of heights for an annual photo.

Return the minimum number of students not standing in the right positions. (This is the number of students that must move in order for all students to be standing in non-decreasing order of height.)

Example 1:

``````Input: [1,1,4,2,1,3]
Output: 3
Explanation:
Students with heights 4, 3 and the last 1 are not standing in the right positions.
``````

Note:

1. 1 <= heights.length <= 100
2. 1 <= heights[i] <= 100

## # 解题方法

### # 排序比较

Python代码如下：

``````class Solution(object):
def heightChecker(self, heights):
"""
:type heights: List[int]
:rtype: int
"""
return sum(a != b for a, b in zip(sorted(heights), heights))
``````

C++代码如下：

``````class Solution {
public:
int heightChecker(vector<int>& heights) {
vector<int> sortedHeights(heights);
sort(heights.begin(), heights.end());
int res = 0;
for (int i = 0; i < heights.size(); ++i) {
if (heights[i] != sortedHeights[i])
++res;
}
return res;
}
};
``````

## # 日期

2019 年 6 月 8 日 —— 刷题尽量不要停