만드는 중입니다

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

리모컨

면접 대비

시간 제한2초메모리 제한256 MB

요약
고장난 숫자 버튼 목록과 목표 채널이 주어질 때, 100번 채널에서 숫자와 +,- 버튼으로 이동하는 최소 버튼 입력 횟수를 구합니다.
난이도

보통10점 중 4점

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

문제

수빈이는 TV를 보고 있다. 리모컨의 숫자 버튼 일부가 고장나서 원하는 채널 번호를 모두 직접 누를 수 없을 수 있다.

리모컨에는 숫자 버튼 0부터 9까지와 +, - 버튼이 있다. +를 누르면 현재 채널보다 1 큰 채널로 이동하고, -를 누르면 1 작은 채널로 이동한다. 채널 0에서 -를 누르면 채널은 그대로 0이며, 채널 번호의 위쪽 범위는 제한이 없다.

현재 보고 있는 채널은 100번이다. 고장난 숫자 버튼 목록이 주어질 때, 목표 채널 N으로 이동하기 위해 버튼을 최소 몇 번 눌러야 하는지 구하라.

입력

첫째 줄에 목표 채널 N이 주어진다. (0 <= N <= 500,000)

둘째 줄에 고장난 숫자 버튼의 개수 M이 주어진다. (0 <= M <= 10)

M이 1 이상이면 셋째 줄에 고장난 숫자 버튼 M개가 공백으로 구분되어 주어진다. 같은 버튼은 두 번 주어지지 않는다.

출력

목표 채널 N으로 이동하기 위해 눌러야 하는 버튼 횟수의 최솟값을 한 줄에 출력한다.

힌트

100번에서 + 또는 -만 누르는 경우도 답 후보이다. 또한 누를 수 있는 숫자 버튼만으로 어떤 채널을 먼저 입력한 뒤, + 또는 -로 목표 채널까지 보정하는 경우를 함께 비교하면 된다.

예제7

  1. 예제 1

    입력
    5457
    3
    6 7 8
    
    예상 출력
    6
    
  2. 예제 2

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

    입력
    500000
    8
    0 2 3 4 6 7 8 9
    
    예상 출력
    11117
    
  4. 예제 4

    입력
    100
    3
    1 0 5
    
    예상 출력
    0
    
  5. 예제 5

    입력
    14124
    0
    
    예상 출력
    5
    
  6. 예제 6

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

    입력
    80000
    2
    8 9
    
    예상 출력
    2228