gcd와 최단 경로
시간 제한1초메모리 제한1024 MB
1부터 N까지의 정수 중 서로소 그래프에서 K까지의 최단 거리가 gcd(x, K)와 같은 x의 개수를 구합니다.
문제
1번 정점부터 번 정점까지 총 개의 정점으로 이루어진 그래프가 주어진다. 이 그래프는 다음과 같은 성질을 가진다.
을 만족하는 서로 다른 두 정수 에 대하여,
- 이면 번 정점과 번 정점을 잇는 간선이 존재한다.
- 이면 번 정점과 번 정점을 잇는 간선은 존재하지 않는다.
번 정점과 번 정점을 잇는 최단 경로의 길이를 로 정의한다. 두 정점을 잇는 경로가 없다면 으로 정의한다. 또한 정의에 따라 이다.
이상 이하의 정수 가 주어졌을 때, 를 만족하는 이상 이하의 정수 의 개수를 구한다.
입력
첫째 줄에 정수 와 이 공백으로 구분되어 주어진다. ()
출력
첫째 줄에 조건을 만족하는 정수의 개수를 출력한다.
힌트
는 와 의 최대공약수를 의미한다.
두 정점을 잇는 경로의 길이는 경로에 포함된 간선의 개수를 의미하며, 최단 경로의 길이는 그 중 최솟값을 의미한다.