[LeetCode] Height Checker

아르당·2026년 3월 29일

LeetCode

목록 보기
229/263
post-thumbnail

문제를 이해하고 있다면 바로 풀이를 보면 됨
전체 코드로 바로 넘어가도 됨
마음대로 번역해서 오역이 있을 수 있음

Problem

학교는 매년 모든 학생의 사진을 촬영하려고 한다. 학생들은 키가 오름차순으로 졍렬되어 한 줄로 서도록 요청받는다. 이 정렬 순서는 정수 배열 expected로 표현되며, expected[i]는 줄에서 i번째 학생의 예상 키이다.
학생들의 현재 순서를 나타내는 정수 배열 heights가 주어진다. heights[i]는 줄에서 i번째 학생의 키이다.
heights[i]가 expected[i]와 같지 않은 인덱스의 개수를 반환해라.

Example

#1
Input: heights = [1, 1, 4, 2, 1, 3]
Output: 3
Explanation:
heights: [1, 1, 4, 2, 1, 3]
expected: [1, 1, 1, 2, 3, 4]
인덱스 2, 4, 5는 같지 않다.

#2
Input: heights = [5, 1, 2, 3, 4]
Output: 5
Explanation:
heights: [5, 1, 2, 3, 4]
expected: [1, 2, 3, 4, 5]
모든 인덱스가 같지 않다.

#3
Input: height = [1, 2, 3, 4, 5]
Output: 0
Explanation:
heights: [1, 2, 3, 4, 5]
expected: [1, 2, 3, 4, 5]
모든 인덱스가 같다.

Constraints

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

Solved

class Solution {
    public int heightChecker(int[] heights) {
        int result = 0;
        int[] expected = Arrays.copyOf(heights, heights.length);
        Arrays.sort(expected);

        for(int i = 0; i < heights.length; i++){
            if(heights[i] != expected[i]){
                result++;
            }
        }

        return result;
    }
}
profile
내 마음대로 코드 작성하는 세상

0개의 댓글