Form a Straight!

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

요약
1부터 9까지의 서로 다른 숫자 카드 다섯 장이 주어질 때, 한 장씩 원하는 숫자로 바꾸는 마법을 최소 몇 번 써야 연속된 다섯 숫자가 되는지 구한다.
난이도

쉬움10점 중 3점

유형
완전 탐색, 구현, 배열
정답자
아직 제출이 없습니다

문제

현석이는 11부터 99까지의 숫자가 적힌 카드 더미에서 임의로 다섯 장의 카드를 뽑았다. 현석이는 이 카드들을 스트레이트로 만들고자 한다.

다섯 장의 카드를 임의로 재배열하여 숫자가 연속으로 이어지도록 할 수 있다면 스트레이트를 만들었다고 본다. 즉, 스트레이트는 아래 다섯 경우 중 하나이다.

  • \[1,2,3,4,5]\[1,2,3,4,5]
  • \[2,3,4,5,6]\[2,3,4,5,6]
  • \[3,4,5,6,7]\[3,4,5,6,7]
  • \[4,5,6,7,8]\[4,5,6,7,8]
  • \[5,6,7,8,9]\[5,6,7,8,9]

현석이는 뽑은 카드 중 한 장의 카드에 적힌 숫자를 원하는 숫자로 바꾸는 마법을 얼마든지 부릴 수 있다. 현석이가 뽑은 카드들을 스트레이트로 만들기 위해 최소 몇 번의 마법을 부려야 하는지 구해보자.

입력

첫째 줄에 현석이가 뽑은 카드 다섯 장에 적힌 숫자가 공백으로 구분되어 주어진다. 각 숫자는 11부터 99 사이의 숫자 중 하나이며, 서로 다르다.

출력

뽑은 카드들을 스트레이트로 만들기 위해 최소 몇 번의 마법을 부려야 하는지 출력한다.

예제3

  1. 예제 1

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

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

    입력
    3 1 9 7 5
    
    예상 출력
    2