소개
이 도전에서, 우리는 무한한 무 방향 그래프를 다룰 것인데, 이것을 높은 제수 그래프 라고 부릅니다 . 그 노드는 두 개의 노드 사이에 에지가 2부터 시작되는 정수 은 <B 의 경우 분할 된 B 및 2 ≥ B는 . 2에서 18까지의 범위로 형성된 하위 그래프는 다음과 같습니다.
16-8 12 18
\|/ |/|
4 6 9 10 15 14
| |/ |/ |
2 3 5 7 11 13 17
무한 높은 제수 그래프가 연결되어 있음을 알 수 있으므로 두 노드 사이의 최단 경로를 물어볼 수 있습니다.
입력과 출력
입력 값은 두 개의 정수 a 와 b 입니다. 2 ≤ a ≤ b <1000 이라고 가정 할 수 있습니다 . 출력은 무한 높은 제수 그래프에서 a 와 b 사이의 최단 경로 길이입니다 . 이것은 경로의 가장자리 수를 의미합니다.
다음 사실이 유용하다는 것을 알 수 있습니다. 항상 a 에서 b 까지의 최적 경로가 항상 증가하고 감소하며 2b 2 미만인 노드 만 방문 합니다. 특히, b <1000 이므로 2 000 000 미만의 노드 만 고려하면됩니다.
예
입력 3
과를 고려하십시오 32
. 노드 3과 32 사이의 가능한 경로는
3 -- 6 -- 12 -- 96 -- 32
이 경로에는 네 개의 모서리가 있으며 짧은 경로가 없으므로 올바른 출력은 4
입니다.
다른 예로서, 2
and에 대한 최적의 경로 25
는
2 -- 4 -- 8 -- 40 -- 200 -- 25
올바른 출력은 5
입니다. 이 경우 최적 경로에 노드가 포함되지 않습니다 50 = lcm(2, 25)
.
규칙과 득점
전체 프로그램 또는 함수를 작성할 수 있습니다. 가장 낮은 바이트 수가 이기고 표준 허점은 허용되지 않습니다. 시간이나 메모리 제한이 없으므로 무차별 강제 실행이 허용됩니다.
테스트 사례
2 2 -> 0
2 3 -> 4
2 4 -> 1
2 5 -> 5
3 5 -> 4
6 8 -> 2
8 16 -> 1
12 16 -> 2
16 16 -> 0
2 25 -> 5
3 32 -> 4
2 256 -> 3
60 77 -> 3
56 155 -> 3
339 540 -> 2
6 966 -> 4
7 966 -> 2
11 966 -> 4
2 997 -> 7
991 997 -> 4
FindShortestPath
는 표준 허점에 대한 제약 조건을 위반 합니까 ? 그렇다면 알려 주시면 제출물을 삭제하겠습니다.