Факторіал, степені та абелеві групи#2490

Факторіал, степені та абелеві групи

4 секунди
64 мегабайти
Легка

Нехай позначає кількість абелевих груп порядку з точністю до ізоморфізму. Нехай та — це фіксовані додатні цілі числа. Для кількох пар додатних цілих чисел і таких, що L \leq R \leq N, знайдіть значення суми

Згадаємо основні поняття та факти про абелеві групи.

Абелева група — це пара G = (A, *), де — множина, а — бінарна операція на , тобто для будь-яких двох елементів і з результат a*b також належить . Повинні виконуватись такі властивості, які називають аксіомами абелевої групи:

(i) Асоціативність: для будь-яких , , з виконується (a*b)*c = a*(b*c).

(ii) Існує такий з , що для будь-якого з виконується a*e = e*a = a.

(iii) Для будь-якого з існує з таке, що a*b = b*a = e.

(iv) Комутативність: для будь-яких , з виконується a*b = b*a.

Важливим прикладом абелевої групи є циклічна група порядку : множина чисел від до n-1 з операцією додавання за модулем . Її позначають як _n.

Прямою сумою двох абелевих груп G = (A, *) і H = (B, \cdot) називається пара G \ H = (C, \times), де C = \{ (a, b): a \in A,\ b \in B \} і (a_1, b_1) \times (a_2, b_2) = (a_1 * a_2, b_1 \cdot b_2) для всіх a_1, a_2 \in A, b_1, b_2 \in B.

Дві групи G = (A, *) та H = (B, \cdot) називаються ізоморфними, якщо існує взаємно однозначна відповідність з на така, що f(a_1) \cdot f(a_2) = f(a_1 * a_2) для всіх a_1, a_2 \in A.

Основна теорема теорії абелевих груп стверджує, що будь-яка скінченна абелева група ізоморфна прямій сумі деяких циклічних груп.

Теорема про китайське остачне ділення стверджує, що _{mn} ізоморфна _m \ _n тоді і лише тоді, коли і взаємно прості.

Останні два факти дозволяють описати всі абелеві групи порядку з точністю до ізоморфізму.

Наприклад, якщо — просте число, то всі групи порядку ізоморфні _n.

Існує неізоморфні групи порядку : _4 та _2 \ _2.

Існує неізоморфні групи порядку : _{27}, _9 \ _3 і _3 \ _3 \ _3.

Існує неізоморфні групи порядку : _4 \ _9, _2 \ _2 \ _9, _4 \ _3 \ _3 і _2 \ _2 \ _3 \ _3.

Вхідні дані

У першому рядку вхідного файлу містяться додатні цілі числа m \leq 10^9, N \leq 200000 та T \leq 10^5, розділені пробілами. Кожен з наступних рядків містить по два додатних цілих числа , R \leq N, розділених пробілом, причому L \leq R.

Вихідні дані

Для кожної пари чисел та з вхідного файлу виведіть значення відповідної суми в окремому рядку.

Приклади

Приклад 1

Loading
Loading