만드는 중입니다

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

정수 게임

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

요약
1부터 N까지의 수에서 최대 15개의 수를 순서대로 처리하며 그 배수를 지울 때, 끝까지 남는 수의 개수를 센다.
난이도

보통10점 중 6점

유형
수학, 정수론, 조합론, 비트 연산
정답자
아직 제출이 없습니다

문제

재현이는 다음 규칙으로 정수 게임을 한다.

  1. 정수 NN과 길이가 KK인 배열 AA를 정한다.
  2. 11부터 NN까지의 정수를 모두 종이에 적는다.
  3. 배열 AA의 맨 앞 수를 골라 배열에서 빼낸다. 고른 수를 xx라고 하면, 종이에 적힌 수 중 xx의 배수를 모두 지운다.
  4. 배열이 빌 때까지 3번 과정을 반복한다.

게임이 끝난 뒤 종이에 남아 있는 수의 개수를 구하는 프로그램을 작성하시오.

입력

첫째 줄에 NN과 KK가 주어진다. (1≤N≤1091 \le N \le 10^9, 1≤K≤151 \le K \le 15)

둘째 줄에 배열 AA의 원소 KK개가 순서대로 주어진다. 각 원소는 100100 이하의 자연수이고, 같은 수가 여러 번 나올 수도 있다.

출력

첫째 줄에 게임이 끝난 뒤 종이에 남아 있는 수의 개수를 출력한다.

힌트

NN이 1010이고 배열이 [2,4,5][2, 4, 5]이면 22의 배수, 44의 배수, 55의 배수를 차례로 지우게 되고, 종이에는 11, 33, 77, 99가 남는다.

예제3

  1. 예제 1

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

    입력
    60 4
    2 3 4 6
    
    예상 출력
    20
    
  3. 예제 3

    입력
    1 1
    2
    
    예상 출력
    1