Незвідні многочлени Junior#4562

Незвідні многочлени Junior

1 секунда
256 мегабайтів
Легка

Дано просте число . Розглянемо множину Z_p = \{0, 1, \ldots, p-1\} — поле залишків за модулем . У цьому полі і множення, і додавання виконуються за модулем .

Розглянемо також множину унітарних многочленів над цим полем вигляду

f(x) = x^n + a_{n-1} x^{n-1} + \ldots + a_1 x + a_0

де — ступінь многочлена, — змінна, а a_i \in Z_p — коефіцієнти.

Наприклад, многочлен x^2 + x + 1 у полі Z_2 є незвідним. Унітарний многочлен називається незвідним, якщо його не можна подати як f(x) = p(x) \cdot q(x), де і — многочлени меншого ступеня, ніж . Зауважимо, що це єдиний незвідний многочлен ступеня два у полі Z_2.

Ваше завдання — обчислити кількість незвідних унітарних многочленів ступеня у полі Z_p.

Вхідні дані

Вхідний файл складається з одного рядка, що містить два цілі числа та (1 \leq p, n \leq 10^9, 1 \leq p^n < 10^{18}).

Вихідні дані

Виведіть кількість незвідних унітарних многочленів ступеня у полі Z_p.

Приклади

Приклад 1

Loading
Loading