计算大数的欧拉乘积函数

Rust Hard math

任务 «计算大数的欧拉乘积函数»

给定一个自然数 n (1 ≤ n ≤ 10^12)。需要计算欧拉函数 φ(n) 的值——即从 1 到 n 中与 n 互质的数的个数。请使用试除法分解质因数(试除到 sqrt(n)),并利用埃拉托色尼筛法预先求出 10^6 以内的素数。输出结果。

输入格式

一个整数 n。

输出格式

一个整数——φ(n)的值。

示例

示例 1

输入
1
输出
1

示例 2

输入
2024-12-31
输出
Вторник

示例 3

输入
10
输出
4

示例 4

输入
2000-01-01
输出
Суббота
main.rs