100 #P1158. G09*【线性筛:欧拉函数】线性筛求欧拉函数

G09*【线性筛:欧拉函数】线性筛求欧拉函数

【题意】

欧拉函数(Euler's totient function),即 φ(n)\varphi(n),表示的是小于等于 nnnn 互质的数的个数。

nn 次询问,每次给出 xx,问 φ(x)\varphi(x) 的值。

【输入格式】

第一行 n (1n10000)n \ (1 \leq n \leq 10000 )

下来 nn 行,每行一个整数 xx,表示求 φ(x) (1x2×107)\varphi(x) \ ( 1 \leq x \leq 2 \times 10^7)

【输出格式】

每次询问输出一行一个整数 φ(x)\varphi(x)

【样例输入】

4
1
10
20
100

【样例输出】

1
4
8
40