こんにちは。R plusAブログの時空です。今回は数式に関してのご報告です。
まず、mn=91としましょうか。m=7,n=13が答えとなりますが、少し式を変形してみます。mn=mn-an+anとします。mn=(m-a)n+anなので、mod(m-a)します。ここで、14mod10=4とは14を10で割った余り4を意味します。
(m-a)n mod(m-a)=0なので、mxn=0+an mod(m-a)となり、mn=an mod(m-a)です。mn=91を代入して、m-aは好きな値にできるので、m-a=10とすると、91=an mod 10となり、91mod10=1なので、an=1mod10です。m=13とn=7とすると、13-a=10はa=3なので、3×7=1mod10となります。また、a=m (mod10)です。
この計算式では、素因数分解はできませんがmod(m-a)=mod10をmod100くらいにできればan=3×7=21mod100となり、ユークリッドの互除法などで91と21の最大公約数を見つければn=7が求まります。しかし、m-a=100と設定してしまうと、m=13で固定されているので、13-a=100となり、a=-87となります。an=(-87+100)x7=13x7mod100になって良くないです。
素因数分解ではない、他の計算式にこの計算方法を応用すれば実用化できるかもしれません。以上です。ありがとうございました。時空。
コメント