약수

NYPC 2019 · 예선

자연수 aa를 자연수 bb로 나누었을 때 나머지가 00이 되면 bbaa의 약수라고 한다. 예를 들어, 6644로 나누었을 때 나머지가 22이므로 4466의 약수가 아니고, 6633으로 나누었을 때 나머지가 00이므로 3366의 약수다. 이렇게 66의 약수를 모두 나열해보면 11, 22, 33, 66으로 총 44개가 된다.

두 자연수 AABB가 주어졌을 때, AA 이상 BB 이하인 모든 수에 대해 각각 약수의 개수를 구해 모두 더한 값을 출력하는 프로그램을 작성하시오.

예를 들어, 입력으로 A=3A=3, B=5B=5가 주어졌을 때, 33의 약수는 1133이고, 44의 약수는 11, 22, 44이고, 55의 약수는 11, 55이므로 총 약수의 개수는 77개이다. 즉, 프로그램이 구해야 하는 답은 77이다.

입력 형식

첫 줄에 두 개의 자연수 AABB가 공백으로 구분되어 주어진다. (1AB10121 \le A \le B \le 10^{12})

출력 형식

첫 줄에 AA 이상 BB 이하인 모든 수에 대해 약수의 개수를 모두 더한 값을 출력한다.

예제 1

입력

1 10

출력

27

예제 2

입력

3 19

출력

57

채점 방식

입력 케이스들은 다음과 같은 종류로 구별되며, 한 종류의 케이스를 다 맞추어야 그 종류에 배정된 점수를 받을 수 있다.

종류 1: 17

B1000B \le 1\,000

종류 2: 27

B100000B \le 100\,000

종류 3: 50

B10000000B \le 10\,000\,000

종류 4: 6

별다른 제약조건 없음.

해설