아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

푸앙이와 계단 수열

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

요약
양쪽 끝에서 최대 3개를 지우거나 길이 K인 계단 수열을 지우는 연산만으로 수열 전체를 없애는 최소 연산 횟수를 구한다.
난이도

보통10점 중 7점

유형
동적 계획법, 문자열 매칭, 누적 합
정답자
아직 제출이 없습니다

문제

푸앙이는 11 이상 99 이하의 양의 정수로 이루어진 길이가 NN인 수열 A_1,A_2,⋯ ,A_NA\_1, A\_2, \cdots, A\_N을 가지고 있으며 다음과 같은 연산을 할 수 있다.

  1. 수열의 왼쪽, 혹은 오른쪽에서부터 원소를 최대 3개 삭제한다.
  2. 수열의 왼쪽, 혹은 오른쪽에서부터 길이가 KK인 계단 수열을 삭제한다.

계단 수열이란 수열의 인접한 모든 원소의 차가 11인 수열이다.

푸앙이는 여러 연산을 통해 자신이 가지고 있는 수열을 지우려 한다. 주어진 수열을 원소가 존재하지 않는 빈 수열로 만드는 데 필요한 연산의 최소 횟수를 구하시오.

입력

첫 번째 줄에 NN (3≤N≤100,000)(3 \leq N \leq 100\\,000), KK (1≤K≤N)(1 \leq K \leq N)가 공백으로 구분되어 주어진다.

두 번째 줄에 수열 A_1,A_2,⋯ ,A_NA\_1, A\_2, \cdots, A\_N이 공백으로 구분되어 주어진다. (1≤A_i≤9)(1 \leq A\_i \leq 9)

출력

주어진 수열을 빈 수열로 만들기 위한 최소 연산 횟수를 출력하시오.

예제3

  1. 예제 1

    입력
    5 3
    1 3 9 2 1
    
    예상 출력
    2
    
  2. 예제 2

    입력
    10 5
    1 2 3 4 5 4 3 2 1 2
    
    예상 출력
    2
    
  3. 예제 3

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