#------
ある数Aの、n進法における整数部の桁数mとの関係は
n^(m-1) ≦ A < n^m
と表せます。
(「a^b」は「aのb乗」を表します。)
また、Aをs進法で表したときの整数部の桁数は
[log(s,A)] + 1
と表せます。
(「[a]」は「aを超えない最大の整数」を表します。
また「log(a,M)」は、「aを底とするMの対数」を表します。
ちなみに「log(a,M)=X」は「a^X=M」と置き換えることが出来ます。)
#------
これをこの問題に当てはめると、
5^3 ≦ A < 5^4
7^3 ≦ A < 7^4
となり、更に「5^3 < 7^3」、「5^4 < 7^4」なので、Aの範囲は
7^3 ≦ A < 5^4
となります。
Aを3進数で表した場合の桁数が知りたいので、3を底とするログを取ります。
[log(3,7^3)]+1 ≦ [log(3,A)]+1 < [log(3,5^4)]+1 …(1)
(「+1」は全ての項に含まれるので、ここで消去します。)
ログは計算すると大変なのですが、ここでは整数部しか見ないので、3の累乗を書き出して、7^3と5^4がどこに当てはまるかを探せばよいことになります。
log(3,9)=2 , log(3,27)=3 , log(3,81)=4 , log(3,243)=5 , log(3,729)=6 , …
7^3=343 , 5^4=625なので、(1)の式は
5 < log(3,343) ≦ log(3,A) < log(3,625) < 6
となります。
したがって答えは6桁です。紙に書いたのと違うから、ちょっと伝わりにくいかな…。とにかく「n進法」「桁数」ときたら、対数です。
お礼
ありがとうございました! 大変よ~くわかりました。 また教えてください。 勉強がんばりまっす!(^_^)Ω