第127問の解答


1.問題 [整数の性質

4桁の整数2つあります。 ●▲ ●▲です。

この2つの整数最大公約数 できるだけ大きくなるように、を決めて下さい。


2.解答例1(長野 美光さん、武田 浩紀さん、わかさひ君、柚奇 神太郎さん、他多数)

p=●▲●▲とします。
の公約数をとおくと、p=a×d、q=b×dと書けます。

p−q2004(a−b)×dとなるので、2004約数になります。

2004=4×3×167因数分解できます。ところが、p、qは奇数なので、奇数。従って、d=3、167、3×167が考えられます。d=3×167と推測できますが、ここでは、それも含めてd=167としてみましょう。

3000<a×167<4000、1000<b×167<2000より、18≦a≦23、6≦b≦11となります。

ここで、167素数なので、下一桁に注目してみましょう。n=0から9までを掛けて得られる数の下一桁は次のとおりです。

参考図

これから、条件に該当するものは、21、b=9のみです。
このとき、p=21×167=3507、q=9×167=150となり、題意を満たします。なお、21、b=9約数に持ちますので、やはり最大公約数最も大きなものは、3×167=501と分かります。

答: =5、 =0

以上


3.解答例2(MapleVによる計算、中村明海さん、清川 育男さん)

中村明海さんが出された参考問題(p= ●▲ ●▲ )の場合は、差をとるとp−q=6006 = 2×3×7×11×1332個約数があります。
今回の問題と違って、場合の数が多いので、このようなときは、コンピュータに計算させたほうが早いでしょう。

(MapleVでの計算例)

> p_gc:=proc(pval,qval)
local ii,i,ival,igcval;
igcval:=0:
for i from 0 to 99 do
 ii:=igcd(pval+i*10,qval+i*10):
 if ii > igcval then ival:=i:igcval:=ii
 fi
od:
RETURN(ival,igcval):
end:

> p_gc(1003,3007);
   50,501
> p_gc(9008,3002);
   43,858
>

(注)igcd:最大公約数

これから、今回の問題の答は、=5、 =0、最大公約数501中村明海さんの問題の答は、 =4、 =3、最大公約数858となります。

以上