約数が与えられると、最初の三角形の数を見つける必要があります。
三角形数は自然数の和と同じです。
私は2から始まる素数を取り、生成された数が三角形の数と一致するようにそれらを並べ替える方法を採用していました。
たとえば、5 つの約数が与えられたとします。2 以降の素数を として取り(2,3,5)
ますN=p1^a1*p2*a2*p3^a3
。(a1+1)(a2+1)....
ここにある除数の数は2,3,5
べき乗と順列を取ることができます。次にn^2+n=2k
(kは順列から得られた値です)。n 値が整数であることを確認します。
これ以外に効率的なアルゴリズムは見つかりませんでした。より最適なアルゴリズムはありますか?