description
根據小學數學的知識,我們知道乙個正整數x是3的倍數的條件是x每一位加起來的和是3的倍數。反之,如果乙個數每一位加起來是3的倍數,則這個數肯定是3的倍數。
現在給定進製p,求有多少個b滿足p進製下,乙個正整數是b的倍數的充分必要條件是每一位加起來的和是b的倍數。
input
第一行乙個正整數t表示資料組數(1<=t<=20)。
接下來t行,每行乙個正整數p(2 < p < 1e9),表示一組詢問。
output
對於每組資料輸出一行,每一行乙個數表示答案。
sample input
1
10
sample output
3
對於任意p進製的數來說,都可以寫成a1
a2a3
...a
n=a1
pn−1
+a2p
n−2+
a3pn
−3+.
..+a
np0 a1a
2a3.
..an
=a1p
n−1+
a2pn
−2+a
3pn−
3+..
.+an
p0
的形式,其各個位數之和為a1
+a2+
a3+.
..+a
n a1+
a2+a
3+..
.+an
,兩數之差a1
(pn−
1−1)
+a2(
pn−2
−1)+
...+
an(p
0−1)
a 1(
pn−1
−1)+
a2(p
n−2−
1)+.
..+a
n(p0
−1
)與這兩數有相同因數,提出公因數p−
1 p−1
,只要求出p−
1 p−1
的因子個數也就求出了題目所求。
#include
#include
using
namespace
std;
int main()
cout
0;}
小C的倍數問題
problem description 根據小學數學的知識,我們知道乙個正整數x是3的倍數的條件是x每一位加起來的和是3的倍數。反之,如果乙個數每一位加起來是3的倍數,則這個數肯定是3的倍數。現在給定進製p,求有多少個b滿足p進製下,乙個正整數是b的倍數的充分必要條件是每一位加起來的和是b的倍數。i...
小C的倍數問題
problem description 根據小學數學的知識,我們知道乙個正整數x是3的倍數的條件是x每一位加起來的和是3的倍數。反之,如果乙個數每一位加起來是3的倍數,則這個數肯定是3的倍數。現在給定進製p,求有多少個b滿足p進製下,乙個正整數是b的倍數的充分必要條件是每一位加起來的和是b的倍數。i...
hdu 6108 小C的倍數問題
acm.hdu.edu.cn showproblem.php?pid 6108 給定進製p,求有多少個b滿足p進製下,乙個正整數是b的倍數的充分必要條件是每一位加起來的和是b的倍數。在 p 進製下,每個正整數都可以都可以表示為 a0 a1p a2p 2 anpn a 0 a1 p anpn b 0 ...