20058 - P-adic数
时间限制 : 1 秒
内存限制 : 128 MB
给定一个有理数 x 和一个质数 p,求 x 的 p-adic 赋值 v_p(x)。
定义:
- 如果 x = 0,定义 v_p(0) = +\infty,此时输出
Infinity。 - 如果 x \neq 0,将 x 写成最简分数 \frac{a}{b}(a, b 为整数,b > 0,\gcd(a, b) = 1),则:
v_p(x) = v_p(a) - v_p(b)
其中 v_p(n) 表示整数 n 中质因子 p 的指数。
输入
第一行包含两个整数 x 和 p,表示有理数 x 和质数 p。
有理数 x 的输入格式为:
- 如果 x 是整数,直接输入整数。
- 如果 x 是分数,输入格式为
a/b(如3/4)。 - 如果 x = 0,输入
0。
输出
- 如果 x = 0,输出
Infinity。 - 否则输出一个整数,表示 v_p(x) 的值。
样例
输入
12/5 2
输出
2
输入
1/6 2
输出
-1
输入
0 7
输出
Infinity
提示
样例说明
对于样例1 12/5已经为最简形式,12/5=223/5 所以在以2-adic的情况下值为2
对于样例2 1/6已经为最简形式,1/6=1/2*3 所以在以2-adic的情况下值为2
对于样例3 0在所有p-adic的情况下值都是无穷大,所以输出infinity