나누어지는 수 세기

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

요약
주어진 배열의 원소 중 하나 이상으로 나누어지는 구간 내 정수의 개수를 부분집합 포함배제와 최소공배수로 구하는 문제입니다.
난이도

보통10점 중 6점

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

문제

자연수 배열 A가 주어진다.

L 이상 R 이하인 자연수 중에서, A에 들어 있는 원소 중 적어도 하나로 나누어떨어지는 수의 개수를 구하는 프로그램을 작성하시오.

입력

첫째 줄에 배열 A의 크기 N과 두 자연수 L, R이 주어진다. N은 18 이하인 자연수이고, L은 1,000,000,000 이하인 자연수이다. R은 L 이상이며 1,000,000,000 이하인 자연수이다.

둘째 줄에는 A의 원소 N개가 공백으로 구분되어 주어진다. 각 원소는 1,000,000,000 이하인 자연수이다.

출력

L 이상 R 이하인 자연수 중에서, A의 원소 중 적어도 하나로 나누어떨어지는 수의 개수를 첫째 줄에 출력한다.

예제4

  1. 예제 1

    입력
    2 1 1000000000
    2 3
    
    예상 출력
    666666667
    
  2. 예제 2

    입력
    1 293 784
    1
    
    예상 출력
    492
    
  3. 예제 3

    입력
    1 255 734
    2
    
    예상 출력
    240
    
  4. 예제 4

    입력
    2 579000 987654
    1 2
    
    예상 출력
    408655