소수의 배수

면접 대비

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

요약
서로 다른 소수 최대 10개와 10^12 이하의 M이 주어질 때, M 이하의 자연수 중 주어진 소수 하나로라도 나누어지는 수의 개수를 센다.
난이도

보통10점 중 7점

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

문제

NN개의 소수와 자연수 MM이 주어진다. MM 이하의 자연수 중에서 NN개의 소수 중 적어도 하나로 나누어 떨어지는 수의 개수를 세어보자.

입력

첫째 줄에 NN(1≤N≤101 \le N \le 10)과 MM(1≤M≤10121 \le M \le 10^{12})이 주어진다. 둘째 줄에는 NN개의 소수가 주어진다. 입력으로 주어지는 소수는 100100보다 작거나 같으며, 같은 소수가 두 번 이상 주어지지 않는다.

출력

첫째 줄에 MM 이하의 자연수 중에서 NN개의 소수 중 적어도 하나로 나누어 떨어지는 수의 개수를 출력한다.

예제5

  1. 예제 1

    입력
    1 100
    3
    
    예상 출력
    33
    
  2. 예제 2

    입력
    2 100
    2 3
    
    예상 출력
    67
    
  3. 예제 3

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

    입력
    4 100
    2 3 5 7
    
    예상 출력
    78
    
  5. 예제 5

    입력
    5 100
    11 13 17 19 23
    
    예상 출력
    30