만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

피아노

면접 대비

시간 제한1초메모리 제한1024 MB

요약
건반 번호의 연주 순서와 손이 덮는 건반 수 K가 주어질 때, 손을 옮겨야 하는 최소 횟수를 구합니다.
난이도

쉬움10점 중 3점

유형
그리디, 배열
정답자
아직 제출이 없습니다

문제

컴소 최고의 피아니스트 예원이는 오른손만으로도 모든 곡을 연주할 수 있다. 비결은 손을 최대한 조금 움직이는 것이다.

예원이가 연주하는 피아노에는 200 000200\,000개의 흰 건반만 있으며, 가장 왼쪽 건반부터 순서대로 11, 22, ⋯\cdots, 200 000200\,000까지 번호가 매겨져 있다. 예원이의 손 길이는 흰 건반 KK개만큼이다. 다음에 누를 건반이 손 안에 있으면 손을 움직이지 않고 그 음을 낼 수 있다. 예를 들어 손 길이가 건반 5개만큼이고 오른손 엄지를 1번 건반에 두었다면, 1번부터 5번 건반까지는 손을 움직이지 않고 칠 수 있다. 이 범위를 벗어난 건반을 누르려면 손을 다른 위치로 옮겨야 한다.

다음 곡을 연주하려면 NN개의 흰 건반을 순서대로 눌러야 한다. 예원이는 원하는 위치에 손을 두고 연주를 시작하며, 연주 중 필요할 때만 손을 옮길 것이다. 하지만 예원이는 수많은 과제에 시달리느라 악보를 분석할 시간이 없다. 바쁜 예원이 대신 곡을 연주하기 위해 손을 옮겨야 하는 최소 횟수를 구하는 프로그램을 작성해 주자.

입력

첫째 줄에 두 정수 NN, KK가 공백으로 구분되어 주어진다. (1≤N≤200 0001 \le N \le 200\,000, 1≤K≤1 0001 \le K \le 1\,000)

둘째 줄에는 눌러야 하는 건반의 번호 a1a_1, a2a_2, ⋯\cdots, aNa_N이 공백으로 구분되어 주어진다. 이는 ii번째로 누르는 건반이 aia_i번 건반이라는 의미이다. (1≤ai≤200 0001 \le a_i \le 200\,000)

출력

첫째 줄에 손을 옮겨야 하는 최소 횟수를 출력한다.

예제3

  1. 예제 1

    입력
    8 5
    3 5 4 9 12 5 7 9
    
    예상 출력
    2
    
  2. 예제 2

    입력
    5 1000
    1000 1999 1001 1998 1000
    
    예상 출력
    0
    
  3. 예제 3

    입력
    9 3
    9 8 7 6 5 4 3 2 1
    
    예상 출력
    2