수의 집합 (Small)

A부터 B까지 수 중 P 이상 소인수를 공유하는 수를 합치고 남은 집합 개수를 구합니다.

보통4유니온 파인드정수론면접 대비아직 제출이 없습니다시간 제한5초메모리 제한512 MB

문제

연속한 정수 구간을 다음 절차에 따라 여러 집합으로 나눈다.

먼저 대상이 되는 정수 구간과 정수 PP 가 주어진다. 처음에는 구간에 속한 각 정수가 자기 자신만 원소로 갖는 서로 다른 집합에 들어 있다. 이제 구간에 속한 두 정수의 모든 쌍에 대해, 두 수가 공통으로 갖는 소인수 중 PP 이상인 것이 하나라도 있으면 두 수가 속한 집합을 합쳐 하나로 만든다.

이 절차를 모두 끝냈을 때 집합은 몇 개인가?

입력

첫째 줄에 테스트 케이스의 수 CC 가 주어진다.

각 테스트 케이스는 한 줄이며, 공백으로 구분된 세 정수 AA, BB, PP 가 주어진다. AABB 는 각각 구간의 첫 정수와 마지막 정수이고, PP 는 위에서 설명한 수이다.

제한

  • 1C101 \le C \le 10
  • 1AB10001 \le A \le B \le 1000
  • 2PB2 \le P \le B

출력

각 테스트 케이스마다 Case #X: Y 형식의 한 줄을 출력한다. XX 는 1부터 시작하는 테스트 케이스 번호이고, YY 는 남은 집합의 개수이다.