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

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

돌 게임 8

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

요약
고정된 수만큼 돌을 가져가는 게임에서 M 이하의 돌 개수 중 후공이 이기는 경우를 셉니다.
난이도

보통10점 중 6점

유형
게임 이론, 동적 계획법, 수학
정답자
아직 제출이 없습니다

문제

돌 게임은 두 사람이 번갈아 돌을 가져가는 게임이다.

탁자 위에 돌이 NN개 있다. 상근이와 창영이가 번갈아 돌을 가져가는데, 한 번에 가져갈 수 있는 돌의 개수는 미리 정해져 있다. 자기 차례에 정해진 개수만큼 돌을 가져갈 수 없는 사람이 게임을 진다. 상근이가 먼저 시작하고, 두 사람은 최선의 방법으로 게임을 한다.

MM과 한 번에 가져갈 수 있는 돌의 개수가 주어졌을 때, 11 이상 MM 이하인 NN 중에서 창영이가 이기는 것이 몇 개인지 구하는 프로그램을 작성하시오.

입력

첫째 줄에 MM이 주어진다. (1≤M≤1091 \le M \le 10^9)

둘째 줄에 가져갈 수 있는 방법의 수 KK가 주어진다. (1≤K≤221 \le K \le 22)

셋째 줄에 한 번에 가져갈 수 있는 돌의 개수 KK개가 공백으로 구분되어 주어진다. 각 개수는 11 이상 2222 이하이고, 중복되는 수는 없으며, 오름차순으로 주어진다.

출력

창영이가 이기는 NN의 개수를 출력한다. (1≤N≤M1 \le N \le M)

예제4

  1. 예제 1

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

    입력
    999
    1
    1
    
    예상 출력
    499
    
  3. 예제 3

    입력
    1000000000
    2
    1 2
    
    예상 출력
    333333333
    
  4. 예제 4

    입력
    6543
    5
    2 4 7 11 20
    
    예상 출력
    1637