N
(通常の番号)の場合は、N-digit
の数値を出力する必要があります。つまり、正方形の最後の数字は987654321
に等しくなります。それは、単純な組合せ論の問題である可能性があり1<=N<=10^6
数字の組み合わせ方法は?
。私はわかりません。私はこの問題のアルゴリズムを見つけようとしています。この問題を解決する最良のアルゴリズムは何ですか?
N
(通常の番号)の場合は、N-digit
の数値を出力する必要があります。つまり、正方形の最後の数字は987654321
に等しくなります。それは、単純な組合せ論の問題である可能性があり1<=N<=10^6
数字の組み合わせ方法は?
。私はわかりません。私はこの問題のアルゴリズムを見つけようとしています。この問題を解決する最良のアルゴリズムは何ですか?
質問です:
が
x^2 mod 1000000000 = 987654321
を満たすのn桁の番号xの数を検索します。
1 N = 9 <
最初のためのソリューション、x^2 = 987654321, 0 <= x < 1000000000
を満足するxの値を計算します。
10^9個の整数をチェックするだけで済むので、PCで事前にカウントすることができます。
Iの値を算出した結果は、次した
Result: 111111111,119357639,380642361,388888889,611111111,619357639,880642361,888888889
したがって、n <= 8
場合答えがゼロであり、n = 9
場合答えが8
2です。 n> = 10の解。
x^2 mod 1000000000
はサイクルであるため、この事実を証明できます10^9の長さです。
0 <= x < 10^9
には8つのソリューションがあります。10^9 <= x < 2*10^9
には8つの解決策があります。2*10^9 <= x < 3*10^9
には8つの解決策があります。k*10^9 <= x < (k+1)*10^9 (k is an integer)
には8つのソリューションがあります。だから、あなたはこれらのことを言うことができます。
0 <= x < 10^9
には8つのソリューションがあります。0 <= x < 10^10
には80の解があります。0 <= x < 10^11
には800の解があります。したがって、全10桁の数字で72社のソリューションは
n>は9
3.おわり
これは、n^2 mod 1000000000 = 987654321を満たすn桁の数を数えることを意味します。 – square1001
はい。明確にするために、このリンクに従ってください。 http://acm.hrbust.edu.cn/vj/index.php?c=problem-problem&id=1028 – SKL